日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
C#對象初始化器描述

C#新語言特性有很多值得學(xué)習(xí)的地方,這里我們主要介紹C#對象初始化器,包括介紹基于泛型的類型為User的List集合等方面。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供郫都網(wǎng)站建設(shè)、郫都做網(wǎng)站、郫都網(wǎng)站設(shè)計、郫都網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、郫都企業(yè)網(wǎng)站模板建站服務(wù),10年郫都做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

C#對象初始化器 (Object Initializers) :

.NET2.0框架中的類型非常依賴于屬性。當(dāng)生成對象實例和使用新的類型時,在.Net2.0時候我們像這樣寫:

 
 
 
 
  1. User user = new User();  
  2. user.Id = 1;  
  3. user.Name = "YJingLee";  
  4. user.Age = 22

在VS2008中,編譯器會自動地生成合適的屬性setter代碼,使得原來幾行的屬性賦值操作可以在一行完成。我們可以這樣簡化:像這樣,對象初始化器由一系列成員對象組成,其對象必須初始化,用逗號間隔,使用{}封閉。

 
 
 
 
  1. User user = new User { Id = 1Name = "YJingLee"Age = 22 }; 

又例如,我把二個人加到一個基于泛型的類型為User的List集合中:

 
 
 
 
  1. List user = new List{  
  2. new User{Id=1,Name="YJingLee",Age=22},  
  3. new User{Id=2,Name="XieQing",Age=25},  
  4. }; 

如果有相同名字和類型的兩個對象初始化器將會產(chǎn)生相同的實例,可以相互賦值。例如:

 
 
 
 
  1. User user = new User { Id = 1Name = "YJingLee"Age = 22 };  
  2. User user2 = new User { Id = 2Name = "XieQing"Age = 25 };  
  3. user = user2;  

除了在初始化類時設(shè)置簡單的屬性值外,C#對象初始化器特性也允許我們設(shè)置更復(fù)雜的嵌套(nested)屬性類型。例如我們可以在上面定義的User類型同時擁有一個屬于Address類型的叫“Address”的屬性:

 
 
 
 
  1. User user = new User  
  2. {  
  3. Id = 1,  
  4. Name = "YJingLee",  
  5. Age = 22,  
  6. Address = new Address  
  7. {  
  8. City = "NanJing",  
  9. Zip = 21000 
  10. }  
  11. }; 

【編輯推薦】

  1. C# const常量詳細(xì)介紹
  2. C# Lambda表達(dá)式學(xué)習(xí)筆記
  3. C#隱式類型局部變量經(jīng)驗總結(jié)
  4. 調(diào)用C# Thread.Start()方法
  5. C# CheckStatus()方法

分享名稱:C#對象初始化器描述
瀏覽地址:http://m.5511xx.com/article/dhshcgo.html