日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

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

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
C#對(duì)象初始化學(xué)習(xí)總結(jié)

C#3.0中加入的對(duì)象構(gòu)造者特性,使得C#對(duì)象初始化工作變得格外簡(jiǎn)單,我們可以采用類似于數(shù)組初始化的方式來(lái)初始化類的對(duì)象,方法就是直接在創(chuàng)建類對(duì)象的表達(dá)式后面跟上類成員的初始化代碼。

創(chuàng)新互聯(lián)專注于翠屏網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供翠屏營(yíng)銷型網(wǎng)站建設(shè),翠屏網(wǎng)站制作、翠屏網(wǎng)頁(yè)設(shè)計(jì)、翠屏網(wǎng)站官網(wǎng)定制、成都微信小程序服務(wù),打造翠屏網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供翠屏網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

以前我們?cè)诼暶鲾?shù)組時(shí),可以同時(shí)對(duì)其進(jìn)行初始化,這樣就省去了很多麻煩,但是在創(chuàng)建類的對(duì)象時(shí),這招可就不靈了,我們要么調(diào)用該類的構(gòu)造函數(shù)完成C#對(duì)象初始化,要么就手工進(jìn)行初始化。這兩種方法都不太方便,使用構(gòu)造函數(shù)來(lái)對(duì)對(duì)象進(jìn)行初始化時(shí),我們?yōu)榱四撤N靈活性,可能需要編寫構(gòu)造函數(shù)的多個(gè)重載版本,實(shí)在是麻煩。

具體示例如下:

 
 
 
  1. classPoint  
  2. {  
  3. publicintX{get;set;}  
  4. publicintY{get;set;}  
  5.  
  6. publicoverridestringToString()  
  7. {  
  8. return"("+X.ToString()+","+Y.ToString()+")";  
  9. }  
  10. }  
  11.  
  12. classRectangle  
  13. {  
  14. publicPointP1{get;set;}  
  15. publicPointP2{get;set;}  
  16.  
  17. publicRectangle()  
  18. {  
  19. P1=newPoint();  
  20. P2=newPoint();  
  21. }  
  22.  
  23. publicoverridestringToString()  
  24. {  
  25. return"P1:"+P1+",P2:"+P2;  
  26. }  
  27. }  
  28.  
  29. classObjectBuilder:AppRunner.AbstractApplication  
  30. {  
  31. publicoverridevoidRun()  
  32. {  
  33. PointthePoint=newPoint(){X=1,Y=2};  
  34. Console.WriteLine("Point(X,Y)={0}",thePoint);  
  35.  
  36. RectangletheRectangle=newRectangle(){  
  37. P1={X=1,Y=1},P2={X=100,Y=200}  
  38. };  
  39. Console.WriteLine(theRectangle);  
  40. }  

我們?cè)诙xPoint類的X和Y屬性時(shí),只須寫上該屬性的get和set訪問(wèn)器聲明,C#編譯器會(huì)自動(dòng)為我們生成默認(rèn)的get和set操作代碼,當(dāng)我們需要定義簡(jiǎn)單屬性時(shí),這個(gè)特性非常有用。

我們以new Point() { X = 1, Y = 2 }語(yǔ)句,輕松的完成了對(duì)Point類的初始化工作。在創(chuàng)建類的對(duì)象時(shí),我們可以按照需要去初始化類的對(duì)象,只要在類的創(chuàng)建表達(dá)式后跟上要初始化屬性的列表即可,且可以只對(duì)需要初始化的屬性賦初值,而無(wú)需把所有屬性的初始值都寫上去。

在theRectangle對(duì)象的初始化表達(dá)式中,我們首先對(duì)P1屬性進(jìn)行初始化,然而P1屬性也是一個(gè)自定義的類型,所以P1屬性的初始化是另一個(gè)類型(Point)的初始化表達(dá)式,我們可以這樣的方式來(lái)對(duì)更加復(fù)雜的類型進(jìn)行初始化。以上介紹C#對(duì)象初始化。

【編輯推薦】

  1. 介紹Mono C#編譯器
  2. C#運(yùn)算符重載學(xué)習(xí)總結(jié)
  3. 概述C#語(yǔ)言的結(jié)構(gòu)體
  4. C#遺傳算法學(xué)習(xí)筆記
  5. 討論C#分部方法

分享文章:C#對(duì)象初始化學(xué)習(xí)總結(jié)
鏈接地址:http://www.dlmjj.cn/article/djhcjjj.html