您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關C#中怎么實現對象初始化,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
C#對象初始化器 (Object Initializers) :
.NET2.0框架中的類型非常依賴于屬性。當生成對象實例和使用新的類型時,在.Net2.0時候我們像這樣寫:
User user = new User(); user.Id = 1; user.Name = "YJingLee"; user.Age = 22;
在VS2008中,編譯器會自動地生成合適的屬性setter代碼,使得原來幾行的屬性賦值操作可以在一行完成。我們可以這樣簡化:像這樣,對象初始化器由一系列成員對象組成,其對象必須初始化,用逗號間隔,使用{}封閉。
User user = new User { Id = 1, Name = "YJingLee", Age = 22 };
又例如,我把二個人加到一個基于泛型的類型為User的List集合中:
List<User> user = new List<User>{ new User{Id=1,Name="YJingLee",Age=22}, new User{Id=2,Name="XieQing",Age=25}, };
如果有相同名字和類型的兩個對象初始化器將會產生相同的實例,可以相互賦值。例如:
User user = new User { Id = 1, Name = "YJingLee", Age = 22 }; User user2 = new User { Id = 2, Name = "XieQing", Age = 25 }; user = user2;
除了在初始化類時設置簡單的屬性值外,C#對象初始化器特性也允許我們設置更復雜的嵌套(nested)屬性類型。例如我們可以在上面定義的User類型同時擁有一個屬于Address類型的叫“Address”的屬性:
User user = new User { Id = 1, Name = "YJingLee", Age = 22, Address = new Address { City = "NanJing", Zip = 21000 } };
以上就是C#中怎么實現對象初始化,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。