看範例
定義Person類別
public class Person
{
public string Name;
public int Age;
public int Height;
public int Weight;
public string Country;
public string PhoneNo;
//預設建構式
public Person() { }
//建構式(1)
public Person(string name)
{
this.Name = name;
}
//建構式(2)
public Person(string name, int age)
{
this.Name = name;
this.Age= age;
}
}
C#2.0 初始化物件方式
//使用預設建構式初始化
Person Tony= new Person();
Tony.Name= "Tony";
Tony.Country = "Chinese";
//使用建構式(1)
Person Tony = new Person("Tony");
//使用建構式(2)
Person Tony = new Person("Tony ", 23);
C#3.0 初始化物件一個新方式(舊的也是沿用)
Person Mary = new Person
{
Name= "Tony";
Age= "23";
Height=177;
Weight=78;
Country = "Chinese";
PhoneNo= "07-3333333";
};
優點:
(1)程式的精簡
(2)提供類似建構式指定參數方式初始化物件
(3)可以任意呼叫所有公開的欄位或屬性,不需要刻意建立多個建構式
至於方不方便,見仁見智吧...
另外泛型也新增了類似的方式
C# 2.0之泛型語法建立之LIST
List<string> models = new List<string>();
models.Add("Kevin");
models.Add("Mary");
models.Add("Clare");
models.Add("Joe");
models.Add("Mark");
C# 3.0之集合初始化(Collection Initializer)建立之List集合
List<string> Models= new List<string> { "Kevin", "Mary", "Clare", "Joe", "Mark" };
沒有留言:
張貼留言