Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

Object Initializer ใน C#

Object Initializer ให้ความสามารถในการกำหนดค่าคุณสมบัติ (Properties) หรือฟิลด์ (Fields) ของอ็อบเจกต์ทันทีที่สร้าง โดยไม่ต้องเรียก Constructor ที่มีพารามิเตอร์

รูปแบบ

var emp = new Employee
{
    EID = 10,
    EmpName = "Tim",
    EmpDept = "Finance"
};

ตัวอย่างโค้ดเต็ม

using System;

public class Demo
{
    public static void Main()
    {
        Employee empDetails = new Employee
        {
            EID = 10,
            EmpName = "Tim",
            EmpDept = "Finance"
        };

        Console.WriteLine(empDetails.EID);
        Console.WriteLine(empDetails.EmpName);
        Console.WriteLine(empDetails.EmpDept);
    }
}

public class Employee
{
    public int EID { get; set; }
    public string EmpName { get; set; }
    public string EmpDept { get; set; }
}

ผลลัพธ์

10
Tim
Finance

ข้อดี: โค้ดสะอาด ลดความจำเป็นต้องสร้าง Constructor หลายรูปแบบ (Telescoping Constructors) และทำงานร่วมกับ Collection Initializer ได้ดี