VB中類的字段和屬性的區別和用法
2006/12/31 11:21:07
類由字段、屬性、方法和事件組成。字段和屬性表示對象包含的信息。字段類似于變量,因為可以直接讀取或設置它們。
例如,如果有一個名為 Car 的對象,則可以在名為 Color 的字段中存儲其顏色。屬性的檢索和設置方法與字段類似,但是屬性是使用 Property Get 和 Property Set 過程實現的,這些過程對如何設置或返回值提供更多的控制。在存儲值和使用此值的過程之間的間接層幫助隔離數據,并使您得以在分配或檢索值之前驗證這些值。
向類添加字段
在類定義中聲明一個公共變量,如下面的代碼所示: Class ThisClass
Public ThisField As String
End Class
向類添加屬性
在類中聲明一個局部變量來存儲屬性值。因為屬性不會自行分配任何存儲區,所以該步驟是必需的。若要保護它們的值不被直接修改,用于存儲屬性值的變量應當聲明為 Private。
根據需要以修飾符(如 Public 和 Shared)作為屬性聲明的開頭。使用 Property 關鍵字聲明屬性名稱,并聲明屬性存儲和返回的數據類型。
在屬性定義中定義 Get 和 Set 屬性過程。Get 屬性過程用于返回屬性值,基本等效于語法中的函數。它們不接受參數,可用于返回在類中聲明的、用于存儲屬性值的私有局部變量的值。Set 屬性過程用于設置屬性的值,它們有參數(通常稱為 Value),該參數的數據類型與屬性本身的數據類型相同。每當屬性值更改時,Value 均會被傳遞給 Set 屬性過程,在該過程中可以驗證它并將其存儲在一個局部變量中。
根據需要使用 End Get 和 End Set 語句終止 Get 和 Set 屬性過程。
使用 End Property 語句終止屬性塊。
注意 如果正在 Visual Studio 集成開發環境 (IDE) 下工作,可以指示它去除空的 Get 和 Set 屬性過程。鍵入 Property PropName As DataType(其中,PropName 是屬性名稱,DataType 是特定數據類型,如 Integer),相應的屬性過程將出現在代碼編輯器中。
下面的示例在類中聲明一個屬性: Class ThisClass
Private m_PropVal As String
Public Property One() As String
Get
Return m_PropVal ' Return the value stored in the local variable.
' Optionally, you can use the syntax One = PropVal to return
' the property value.
End Get
Set(ByVal Value As String)
m_PropVal = Value ' Store the value in a local variable.
End Set
End Property
End Class
當創建 ThisClass 的一個實例并設置 One 屬性的值時,將調用 Set 屬性過程且該值在 Value 參數中傳遞,該參數存儲在名為 m_PropVal 的局部變量中。當檢索此屬性值時,將像函數那樣調用 Get 屬性過程并返回存儲在局部變量 m_PropVal 中的值。
屬性和屬性過程
可以使用屬性和字段在對象中存儲信息。屬性使用屬性過程控制如何設置或返回值,而字段只是公共變量。屬性過程是在屬性定義中聲明的代碼塊,使您可以在設置或檢索屬性值時執行代碼。Visual Basic .NET 有兩種類型的屬性過程:Get 屬性過程用于檢索屬性值;Set 屬性過程用于向屬性賦值。例如,存儲銀行帳戶余額的屬性可能會在 Get 屬性過程中使用代碼以在返回可用余額之前記入利息并檢查服務費。用于可用余額的 Set 屬性過程會提供驗證代碼以防止不正確地更新余額。簡而言之,屬性過程允許對象保護和驗證自己的數據
只讀和只寫屬性
大多數屬性有 Get 和 Set 這兩個屬性過程以使您可以同時讀取和修改所存儲的值。然而,您可以使用 ReadOnly 或 WriteOnly 修飾符來限制對屬性的讀取或修改。只讀屬性不能有 Set 屬性過程,它們可用于需要公開但不允許修改的項。例如,可以使用只讀屬性
下一頁
返回列表
返回首頁
主站蜘蛛池模板:
国产成人精品cao在线|
成人影院wwwwwwwwwww|
亚洲熟妇无码乱子av电影|
美女国产毛片a区内射|
国产模特众筹精品视频|
99riav国产在线观看|
彩虹男gary网站|
久久久噜噜噜久久中文字幕色伊伊|
欧美亚洲国产一区二区三区|
伊人热热久久原色播放www|
美女胸又www又黄网站|
国产免费一区二区三区在线观看
|
精品国产中文字幕|
国产三级在线观看完整版|
国产视频你懂得|
国产精品推荐天天看天天爽|
99精品国产在热久久|
怡红院免费手机在线观看|
久久久久久AV无码免费网站|
日韩美女拍拍免费视频网站|
亚洲人成电影网站色|
欧美老熟妇乱大交xxxxx|
伊人久久大香线蕉综合影
|
精品国产第一国产综合精品|
国产中的精品一区的|
黄色一级视频网站|
国产精品亚洲w码日韩中文|
97精品在线观看|
天天干天天干天天干天天干
|
日本高清免费xxx在线观看|
亚洲va欧美va|
欧美巨大xxxx做受中文字幕|
亚洲欧美电影在线一区二区|
狠狠色丁香婷婷综合久久片|
免费成人在线网站|
精品少妇一区二区三区视频|
国产AV人人夜夜澡人人爽麻豆|
蜜桃麻豆www久久国产精品|
国产又粗又长又硬免费视频
|
野花社区视频在线观看|
国产成人久久精品亚洲小说|