本人很喜歡VB.NET,在工作中也很喜歡總結(jié)關(guān)于VB.NET創(chuàng)建類的經(jīng)驗教訓(xùn),下面就這個問題來詳細(xì)說說吧。對于復(fù)雜的操作設(shè)計解決方案,必須首先確定組成這個系統(tǒng)的對象,在VB中,我們常常把每個對象的屬性和操作組合到一個類里面,類的定義如下:
- Class ClassName
- '屬性和操作
- End Class
一個完整的例子:
- Class Classname
- dim a as string
- dim b as integer
- dim c as string
- sub op()
- end sub
- sub cl()
- endsub
- endclass
類的定義本身不產(chǎn)生變量,定義之后可以使用new操作符來產(chǎn)生變量
- dim variable as classname
變量定義后可以使用點運算符來引用
- variable.a = 'test'
VB.NET創(chuàng)建類的時候,應(yīng)當(dāng)把類設(shè)計成一個“黑匣子”,就像電視機一樣我們不需要了解電視機的組成和原理,直接用就可以了,可以隱藏類的私有類成員和方法,用來控制類成員訪問的修飾符
◆Friend : 只在當(dāng)前項目中可用
◆private : 只在本類中可用
◆protected : 在本類和本類的派生類中可用的成員
◆protected friend:在當(dāng)前項目和本類的派生類中可用
◆public :類以外的代碼也可以訪問
默認(rèn)值為:public
類成員的初始化
VB.NET創(chuàng)建類的對象的時候,通常立即賦值,為了簡化賦值的操作,可以放入專門的子例程,即構(gòu)造器,在任何類定義中,它都叫做new,例如:
- class book
- publictitle as string
- publicpublisher as string
- sub new()
- me.title=title
- me.publisher=publisher
- end sub
- end class
如果要簡化對象成員的引用可以使用with運算符,在VB.NET創(chuàng)建類的時候,可能經(jīng)常需要對類的變量賦值進(jìn)行限制,例如,年齡,為了實現(xiàn)對類變量賦值的限制,可以在變量定義的時候使用private,例如