自動實作屬性(Auto-Implemented Property)
當我們在設計Class時,常常會需要使用"屬性(Property)"來存取Private變數,有時只是簡單的存取,但你還是必須撰寫必要的程式碼。
程式一:傳統屬性寫法
Private _name As String '存取_name的屬性 Public Property Name As String Get Return _name End Get Set(ByVal value As String) _name = value End Set End Property
但在Visual Basic 2010中,我們可以直接使用"自動實作屬性"功能,來快速指定Class的屬性,而不必撰寫Get與Set相關程式碼。
程式二:自動實作屬性寫法
Public Property Name As String '可以直接設定預設值 '會自動把值給Set 'Public Property Name As String = "KKBruce"
經由程式二的自動實作屬性,Visual Basic的Compliler會自動實作相關的Get和Set程式碼,還會自動建立Private的變數(使用底線(_)加屬性名稱),簡單想,當你使用程式二的自動實作屬性寫法,那Visual Basic會自動實作程式一所有程式碼。
使用自動實作屬性有幾點要小心:
- 請注意Private變數名稱
自動實作屬性會自動建立Private變數,如果自動建立的變數名稱已存在,那產生命名衝突。 - 陣列屬性
自動實作屬性宣告為陣列時,無法指陣列大小,但可以提供初始值。
程式三:自動實作屬性宣告為陣列
Property Scores() As Integer '提供初始值 'Property scores As Integer() = New Integer() {10, 20, 30}
沒有留言:
張貼留言
感謝您的留言,如果我的文章你喜歡或對你有幫助,按個「讚」或「分享」它,我會很高興的。