VB.Net是VB6.0的升級版,兩者的不同之處在於VB是基於對象的面向過程的編程語言,VB.Net是完全面向對象的編程語言。之前在用VB進行編程時對類的使用少之又少,在VB.Net中,對類與基類的使用將成爲我們今後編程中最重要的課題之一。
最近在學習VB.Net視頻,視頻中講到了使用類別與基底類別庫。在這一部分的內容中主要講到了三個知識點:公共類別、命名空間和元件。
公用類別
在創建一個類時,將這個類(包括成員變量)的作用域聲明爲Public時,這個類就可以作爲公用類被所有類別的執行個體使用。在使用過程中,不需要建立公用類別的實體,執行個體就可以直接調用公用類別的成員(屬性、方法、過程)。VB.Net中存在模塊,模塊中的成員均爲公用的類別,其作用在於供項目中所有的成員(窗體、類等)使用。
定義公用類別
Public Class Math
Public Const pi As Double = 3.1415926 '定義常數爲公用成員的關鍵字爲Const
Public Shared Function Pow(x As Double, y As Double) As Double '定義屬性、方法爲公用成員的關鍵字爲Shared
End Function
End Class
在模塊定義公用類別,使用Module關鍵字,此時,在模塊定義的公用類別不需要使用關鍵字Const和Shared。 Public Module Globals 'Module關鍵字,指在模塊中定義的公用類別
Public UserName As String '在屬性和方法中不需使用關鍵字Const和Shared
Public Function Login() As Boolean
End Function
End Module
另外.Net提供了強大的基底類別庫,在編程過程可以隨時調用類庫中的類。由於類庫中的不同類的用途不同,爲了將這些類區別開來,.Net提供了命名空間對其進行分類。命名空間(NameSpace)
.Net中命名空間主要是對類進行分類,其好處是減少類的命名衝突,增強代碼的可讀性。在代碼中使用不同命名空間中的類的方法有三種:1、完全參照,包含了從最外層算起所有的命名空間。2、匯入命名空間。3、使用別名。第2、3種方法在使用的時候需要用到關鍵字Imports。
完全參照
Dim X As TeamX.BusinessTier.Customer
X= New TeamX.BusinessTier.Customer
匯入命名空間
imports TeamX.BusinessTier
Dim X As Customer
X=New Customer()
使用別名
imports BT= TeamX.BusinessTier
Dim X As BT.Customer
X=New BT.Customer()<span style="font-family: KaiTi_GB2312; font-size: 18px; background-color: rgb(255, 255, 255);"> </span>
元件(DLL)
面向對象編程是以元件爲基礎的程序設計,元件=組件,也可稱之爲動態鏈接庫。類在編譯時,就會被包裝成組件,組件分爲兩種.Exe和.Dll,在.Exe檔中包含啓動點和類,.Dll只包含類。使用Dll的方法視頻中介紹了兩種,一種是直接引用,一種是在項目中添加引用。兩種的方法具體步驟不再詳解,大家可以在VB.Net中親自動手做做。
總結:
這一部分的內容剛看的時候覺得他們之間的關係不大,看的過程中才把三者之間的關係鬧明白。類可以聲明成公用類,不需要實例化就可以供其他類別使用。類經過編譯生成DLL,Dll和類的使用都需要通過命名空間做介質。
PS:在看VB.Net視頻的時候,更多地是去聯繫VB6.0學到的知識。用VB6.0做機房收費系統的時候,模塊和Dll我們都用到過,如:模塊實現了登錄窗體的啓動、連接數據庫功能,用Dll實現了報表功能等。這樣能更好地幫助自己理解這些知識。