概括總結(jié)VB.NET共享方法
VB.NET還是比較常用的,于是我研究了一下VB.NET共享,在這里拿出來和大家分享一下,希望對大家有用。隨著對象的功能越來越強(qiáng)大,我們有時想訪問一些變量、函數(shù)或者程序而不需要一個實(shí)際的對象實(shí)例。在以前,我們可以鍵入這類型的代碼到一個代碼模塊中,而不管程序是否跟一些類有關(guān)。
VB.NET共享方法
#T#在VB.NET中我們有了一個較好的改變。不僅一個類可以擁有所有正常的方法和屬性(這些方法和屬性可以由創(chuàng)建類的實(shí)例來實(shí)現(xiàn))而且它們可以擁有一些不需要創(chuàng)建類的實(shí)例的方法,這些方法就是本教程要介紹的共享方法。這些方法在其它的編程語言中也稱為靜態(tài)方法或者類方法。
一個共享方法不能作為一種普通的方法,通過一個對象的實(shí)例來訪問,而是可以從類直接訪問。下面是共享方法的一個簡單的例子:
- Public Class Math
 - Shared Function Add(ByVal a As Integer, ByVal b As Integer) As Integer
 - Return a + b
 - End Function
 - End Class
 
我們可以不用實(shí)例化一個Math對象,就可以訪問,代碼如下:
- Dim result As Integer
 - result = Math.Add(5, 10)
 
現(xiàn)在請再仔細(xì)看看,這里我們不是使用一個變量,而是直接使用類的方法。如果用通常的方法就將導(dǎo)致錯誤,但是利用了共享方法一切都變得可以接受了。共享方法不僅可以通過通常的方法來訪問而且可以在不需要創(chuàng)建一個對象的條件下提供訪問的功能。實(shí)際上,當(dāng)一個共享方法被調(diào)用的時候,沒有任何對象被創(chuàng)建,它就象再模塊中的一個程序可以直接被調(diào)用。
VB.NET共享共享方法和其它普通的方法一樣也可以被重載,所以可以利用相同的共享方法來創(chuàng)建一系列變化的方法,每一種方法有不同的參數(shù)列表。共享方法的缺省的轄域是Public。我們也可以載聲明中將共享方法設(shè)置為Friend、Protected或者Private。實(shí)際上,當(dāng)重載方法的時候,只要參數(shù)列表不同我們就有不同的作用域。
究竟共享方法是如何使用的呢,下面我們看看一個例子。當(dāng)我們想為輸入打開一個文本文件的時候,我們可以在File類中使用一個共享代碼,如下:
- Dim infile As StreamReader = File.OpenText(words.txt)
 - Dim strIn As String
 - str = infile.ReadLine()
 
這里沒有任何的類型的文件被創(chuàng)建。OpenText方法是一個共享方法,它打開一個文件并且返回一個StreamReader對象。另外一個例子來自System.Guid數(shù)據(jù)類型。這個類描述了一個全局的獨(dú)特的用戶ID(GUID)數(shù)值,但是我們可以通過一個共享方法來創(chuàng)建一個新的方法。
- Dim guidID As Guid()
 - guidID = Guid.NewGuid()
 
這個NewGuid方法是直接從Guid類中調(diào)用的。它創(chuàng)建了一個新的Guid對象并且返回一個數(shù)值。















 
 
 
 
 
 
 