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

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

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
詳解VisualStudio2010中自動(dòng)執(zhí)行屬性

在Visual Studio 2010中,有不少特性能幫助大家更好,更快的完成開發(fā)工作。本文將介紹的是自動(dòng)執(zhí)行屬性。

創(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)定制、小程序設(shè)計(jì)服務(wù),打造潼南網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供潼南網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

自動(dòng)執(zhí)行的屬性能夠讓你迅速指定一個(gè)類的屬性,不用寫“Get”和“Set”這個(gè)屬性的代碼。當(dāng)你為自動(dòng)執(zhí)行的屬性寫代碼的時(shí)候,Visual Basic編譯器自動(dòng)創(chuàng)建一個(gè)私有字段存儲(chǔ)這個(gè)屬性的變量,此外還創(chuàng)建相關(guān)的“Get”和“Set”步驟。

采用自動(dòng)執(zhí)行的屬性,一個(gè)屬性(包括一個(gè)默認(rèn)值)可以在一個(gè)單個(gè)的行中聲明。下面的例子顯示了三個(gè)屬性的聲明。

 
 
 
  1. Public Property Name As String   
  2. Public Property Owner As String = "DefaultName"   
  3. Public Property Items As New List(Of String) From {"M", "T", "W"}   
  4. Public Property ID As New Guid()  

一個(gè)自動(dòng)執(zhí)行的屬性相當(dāng)于一個(gè)屬性值存儲(chǔ)在一個(gè)私有字段中的屬性。下面代碼例子顯示一個(gè)自動(dòng)執(zhí)行屬性。

 
 
 
  1. Property Prop2 As String = "Empty" 

下面的代碼例子顯示以前自動(dòng)執(zhí)行屬性例子的相等的代碼。

 
 
 
  1. Private _Prop2 As String = "Empty"   
  2. Property Prop2 As String   
  3. Get   
  4. Return _Prop2   
  5. End Get   
  6. Set(ByVal value As String)   
  7. _Prop2 = value   
  8. End Set   
  9. End Property  

支持字段

當(dāng)你聲明一個(gè)自動(dòng)執(zhí)行屬性的時(shí)候,Visual Basic自動(dòng)創(chuàng)建一個(gè)名為“支持字段”的隱藏的私有字段 以容納這個(gè)屬性的值。這個(gè)支持字段名稱是前面有一個(gè)加下劃線(_)的自動(dòng)執(zhí)行的屬性名稱。例如,如果你聲明一個(gè)自動(dòng)執(zhí)行的屬性命名的ID,這個(gè)支持字段就命名為_ID。如果你包含一個(gè)名稱也是_ID的你的類的一個(gè)編號(hào),你就制造了一個(gè)命名沖突,Visual Basic將報(bào)告一個(gè)編譯器錯(cuò)誤。

這個(gè)支持字段還有下面的特點(diǎn):

◆訪問這個(gè)支持字段修飾符總是私有的方式,甚至當(dāng)屬性本身有不同的訪級(jí)別(如公共的)的時(shí)候也是如此。

◆如果屬性標(biāo)記為共享,這個(gè)支持字段也是共享的。

◆為這個(gè)屬性指定的屬性不適用于這個(gè)支持字段。

支持屬性可以從這個(gè)類中的代碼訪問以及從Watch window等調(diào)試工具訪問。然而,這個(gè)支持字段在IntelliSense(智能感應(yīng))字補(bǔ)全列表中不顯示出來。

初始化一個(gè)自動(dòng)執(zhí)行屬性

能夠用于初始化一個(gè)字段的任何表達(dá)式對(duì)于初始化一個(gè)自動(dòng)執(zhí)行屬性都是合法的。當(dāng)你初始化一個(gè)自動(dòng)執(zhí)行屬性的時(shí)候,這個(gè)表達(dá)式將被評(píng)估并且傳送到這個(gè)屬性的Set步驟。下面的代碼例子顯示包括初始值的一些自動(dòng)執(zhí)行的屬性。

 
 
 
  1. Property FirstName As String = "James" 
  2. Property PartNo As Integer = 44302  
  3. Property Orders As New List(Of Order)(500) 

你不能聲明一個(gè)自動(dòng)執(zhí)行的屬性作為一個(gè)Structure(結(jié)構(gòu))的一個(gè)成員。如果它標(biāo)記為共享的,你才能初始化這個(gè)自動(dòng)執(zhí)行屬性。

當(dāng)你聲明一個(gè)自動(dòng)執(zhí)行屬性作為一個(gè)組數(shù)的時(shí)候,你可以指定明確的組數(shù)邊界。然而,你可以使用一個(gè)組數(shù)初始化程序提供一個(gè)值,如下面的例子所示:

 
 
 
  1. Property Grades As Integer() = {90, 73}  
  2. Property Temperatures As Integer() = New Integer() {68, 54, 71} 

需要標(biāo)準(zhǔn)語法的屬性定義

自動(dòng)執(zhí)行的屬性是很方便的,支持許多編程情況。然而,有一些情況你不能使用自動(dòng)執(zhí)行的屬性,必須使用標(biāo)準(zhǔn)的或者擴(kuò)展的屬性語法。

如果你要做下列之情之一,你必須使用屬性定義語法:

◆向一個(gè)屬性的Get或者Set步驟增加代碼,如在Set步驟中增加驗(yàn)證輸入值的代碼。例如,你也許在設(shè)定這個(gè)屬性值之前驗(yàn)證一個(gè)字符串。這個(gè)字符串顯示一個(gè)包含要求的數(shù)字?jǐn)?shù)量的電話號(hào)碼。

◆為Get和Set步驟指定不同的訪問性。例如,你也許要Set步驟是私有的,讓Get步驟是公共的。

◆創(chuàng)建只寫或只讀的屬性

◆使用參數(shù)化屬性(包括默認(rèn)屬性)。你必須聲明一個(gè)擴(kuò)展的熟悉以便為這個(gè)屬性指定一個(gè)參數(shù)或者為Set步驟指定一個(gè)額外的參數(shù)。

◆在支持字段加入一個(gè)屬性。

◆為支持字段提供XML注釋。

擴(kuò)展一個(gè)自動(dòng)執(zhí)行的屬性

如果你必須要把一個(gè)自動(dòng)執(zhí)行的屬性轉(zhuǎn)變?yōu)榘粋€(gè)Get或者Set步驟的擴(kuò)展的屬性,Visual Basic代碼編輯器能夠自動(dòng)生成Get和Set步驟以及這個(gè)屬性的“End Property”(結(jié)束屬性)聲明。如果你把這個(gè)光標(biāo)放在屬性聲明后面的空白行中,輸入一個(gè)G(代表Get)或者一個(gè)S(代表Set)并且按下ENTER鍵,這個(gè)代碼就生成了。當(dāng)你在屬性聲明結(jié)束時(shí)按下ENTER鍵的時(shí)候,Visual Basic代碼編輯器自動(dòng)生成Get或者Set步驟的只讀和只寫屬性。


名稱欄目:詳解VisualStudio2010中自動(dòng)執(zhí)行屬性
網(wǎng)頁(yè)網(wǎng)址:http://www.dlmjj.cn/article/dpoisgh.html