มีหลายเหตุที่ต้องแยก class (partial class) ได้ตามความซับซ้อนตามที่ต้องการ:
-
เมื่อทำงานกับโปรเจ็คขนาดใหญ่, การแยก class ไว้ในหลายไฟล์เพื่อให้โปรแกรมเมอร์สามารถทำงานกับ class นั้นได้ในเวลาเดียวกัน.
-
เมื่อทำงานกับการสร้าง code โดยโปรแกรม (automatically generated source), code สามารถถูกเพิ่มเข้าไปใน class โดยไม่ต้องสร้าง source file ใหม่. Visual Studio ใช้วิธีการนี้เมื่อใช้สร้าง Windows Forms, Web service wrapper code, and so on. คุณสามารถสร้าง code ที่ใช้งาน class โดยไม่ต้องแก้ไขาไฟล์ที่ถูกสร้างโดย Visual Studio.
-
แยกหนึ่งที่มีความซับซ้อน, ให้ใช้ modifier keyword เป็น partial , ดังเช่นด้านล่าง:
public partial class Employee
{
public void DoWork()
{
}
}
public partial class Employee
{
public void GoToLunch()
{
}
}
partial keyword แสดงให้เห็นว่าส่วนอื่น ๆ ของ class, struct, หรือ interface สามารถสร้างเพิ่มได้ใน namespace. ทุกอยางภายในต้องใช้ partial keyword. ทุกอย่างภายในต้อง available ตอน compile time ในรูปแบบ final type. ทุกส่วนต้องมี accessibility ที่เหมือนกัน, เช่น public, private, และอื่น ๆ.
ถ้ามีบางส่วน declared เป็น abstract, นั้นทำให้ทั้งหมดเป็น abstract. ถ้าหลาย ๆ ส่วนกำหนดเป็น sealed, นั้นทำให้ทั้งหมดของ type ที่มีอยู่เป็น sealed. ถ้าทุกส่วนของกำหนดเป็น base type, นั้นทำให้ทั้งหมดของของ type ที่ inherits จาก class ทั้งหมด.
- เมื่อทำงานกับโปรเจ็คขนาดใหญ่, การแยก class ไว้ในหลายไฟล์เพื่อให้โปรแกรมเมอร์สามารถทำงานกับ class นั้นได้ในเวลาเดียวกัน.
- เมื่อทำงานกับการสร้าง code โดยโปรแกรม (automatically generated source), code สามารถถูกเพิ่มเข้าไปใน class โดยไม่ต้องสร้าง source file ใหม่. Visual Studio ใช้วิธีการนี้เมื่อใช้สร้าง Windows Forms, Web service wrapper code, and so on. คุณสามารถสร้าง code ที่ใช้งาน class โดยไม่ต้องแก้ไขาไฟล์ที่ถูกสร้างโดย Visual Studio.
- แยกหนึ่งที่มีความซับซ้อน, ให้ใช้ modifier keyword เป็น partial , ดังเช่นด้านล่าง:
public partial class Employee { public void DoWork() { } } public partial class Employee { public void GoToLunch() { } }
partial keyword แสดงให้เห็นว่าส่วนอื่น ๆ ของ class, struct, หรือ interface สามารถสร้างเพิ่มได้ใน namespace. ทุกอยางภายในต้องใช้ partial keyword. ทุกอย่างภายในต้อง available ตอน compile time ในรูปแบบ final type. ทุกส่วนต้องมี accessibility ที่เหมือนกัน, เช่น public, private, และอื่น ๆ.
ถ้ามีบางส่วน declared เป็น abstract, นั้นทำให้ทั้งหมดเป็น abstract. ถ้าหลาย ๆ ส่วนกำหนดเป็น sealed, นั้นทำให้ทั้งหมดของ type ที่มีอยู่เป็น sealed. ถ้าทุกส่วนของกำหนดเป็น base type, นั้นทำให้ทั้งหมดของของ type ที่ inherits จาก class ทั้งหมด.