C # ช่วยให้คุณสามารถระบุพารามิเตอร์คุณสมบัติในวงเล็บปีกกาเมื่อวัตถุถูกเริ่มต้น วิธีนี้ช่วยให้คุณสามารถเลือกและเลือกรายการที่จะเริ่มต้นและจะให้เป็นค่าเริ่มต้น
ในทางกลับกันคอนสตรัคให้เรียกใช้โค้ดบล็อกหนึ่งบล็อกด้วยชุดพารามิเตอร์คงที่ ดังนั้นเพื่อให้ได้เอฟเฟ็กต์แบบเดียวกันคุณจะต้องสร้างคอนสตรัคเตอร์หลาย ๆ อันด้วยการรวมกันของคุณสมบัติต่างๆที่คุณอาจต้องการเริ่มต้นซึ่งอาจน่าเบื่อ
var x = new Person {FirstName="Homer",LastName="Simpson",Age=47};
เทียบเท่ากับสิ่งนี้ทั้งหมด:
var x = new Person();
x.FirstName="Homer";
x.LastName="Simpson";
x.Age=47;
ยกเว้นว่ามันจะสั้นกว่าและง่ายกว่าในเนื้อหา
นอกจากนี้ยังช่วยในการสร้างเช่นคุณแสดงให้เห็นในคำถามของคุณซึ่งจะน่าเบื่อมากถ้าคุณต้องสร้างตัวแปรชั่วคราวและเริ่มต้นพวกเขาออกมาเหมือนที่ฉันทำที่นี่ก่อนที่จะเพิ่มลงในรายการ (ซึ่งเป็นวิธีที่คุณใช้ในการทำ) ทั้งหมดโดยไม่ต้องใช้ตัวสร้างที่กำหนดไว้อย่างชัดเจนซึ่งจะใช้รายการพารามิเตอร์ที่คุณต้องการซึ่งอาจจะมีหรือไม่มีก็ได้
นอกจากนี้โปรดทราบว่าในขณะที่นวกรรมิกสามารถเริ่มต้นคุณสมบัติด้วย setter ส่วนตัวเทคนิคนี้ (ตามที่ควรจะชัดเจนจากตัวอย่างที่ให้ไว้) จะทำงานเฉพาะเมื่อคุณมี setter สาธารณะสำหรับคุณสมบัติ โปรดทราบด้วยว่าตัวอย่างที่สั้นลงของฉันโดยปริยายเรียกว่าตัวสร้างปริยาย (ไร้พารามิเตอร์) ซึ่งจะต้องมีอยู่