溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

VB.NET如何共享方法

發(fā)布時(shí)間:2021-12-02 14:25:23 來(lái)源:億速云 閱讀:138 作者:小新 欄目:編程語(yǔ)言

這篇文章主要介紹VB.NET如何共享方法,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

VB.NET共享方法

在VB.NET中我們有了一個(gè)較好的改變。不僅一個(gè)類(lèi)可以擁有所有正常的方法和屬性(這些方法和屬性可以由創(chuàng)建類(lèi)的實(shí)例來(lái)實(shí)現(xiàn))而且它們可以擁有一些不需要?jiǎng)?chuàng)建類(lèi)的實(shí)例的方法,這些方法就是本教程要介紹的共享方法。這些方法在其它的編程語(yǔ)言中也稱(chēng)為靜態(tài)方法或者類(lèi)方法。

一個(gè)共享方法不能作為一種普通的方法,通過(guò)一個(gè)對(duì)象的實(shí)例來(lái)訪(fǎng)問(wèn),而是可以從類(lèi)直接訪(fǎng)問(wèn)。下面是共享方法的一個(gè)簡(jiǎn)單的例子:

Public Class Math  Shared Function Add(ByVal a As Integer, ByVal b As Integer) As Integer  Return a + b  End Function  End Class

我們可以不用實(shí)例化一個(gè)Math對(duì)象,就可以訪(fǎng)問(wèn),代碼如下:

Dim result As Integer  result = Math.Add(5, 10)

現(xiàn)在請(qǐng)?jiān)僮屑?xì)看看,這里我們不是使用一個(gè)變量,而是直接使用類(lèi)的方法。如果用通常的方法就將導(dǎo)致錯(cuò)誤,但是利用了共享方法一切都變得可以接受了。共享方法不僅可以通過(guò)通常的方法來(lái)訪(fǎng)問(wèn)而且可以在不需要?jiǎng)?chuàng)建一個(gè)對(duì)象的條件下提供訪(fǎng)問(wèn)的功能。實(shí)際上,當(dāng)一個(gè)共享方法被調(diào)用的時(shí)候,沒(méi)有任何對(duì)象被創(chuàng)建,它就象再模塊中的一個(gè)程序可以直接被調(diào)用。

VB.NET共享共享方法和其它普通的方法一樣也可以被重載,所以可以利用相同的共享方法來(lái)創(chuàng)建一系列變化的方法,每一種方法有不同的參數(shù)列表。共享方法的缺省的轄域是Public。我們也可以載聲明中將共享方法設(shè)置為Friend、Protected或者Private。實(shí)際上,當(dāng)重載方法的時(shí)候,只要參數(shù)列表不同我們就有不同的作用域。

究竟共享方法是如何使用的呢,下面我們看看一個(gè)例子。當(dāng)我們想為輸入打開(kāi)一個(gè)文本文件的時(shí)候,我們可以在File類(lèi)中使用一個(gè)共享代碼,如下:

Dim infile As StreamReader = File.OpenText(words.txt)  Dim strIn As String  str = infile.ReadLine()

這里沒(méi)有任何的類(lèi)型的文件被創(chuàng)建。OpenText方法是一個(gè)共享方法,它打開(kāi)一個(gè)文件并且返回一個(gè)StreamReader對(duì)象。另外一個(gè)例子來(lái)自System.Guid數(shù)據(jù)類(lèi)型。這個(gè)類(lèi)描述了一個(gè)全局的獨(dú)特的用戶(hù)ID(GUID)數(shù)值,但是我們可以通過(guò)一個(gè)共享方法來(lái)創(chuàng)建一個(gè)新的方法。

Dim guidID As Guid()  guidID = Guid.NewGuid()

這個(gè)NewGuid方法是直接從Guid類(lèi)中調(diào)用的。它創(chuàng)建了一個(gè)新的Guid對(duì)象并且返回一個(gè)數(shù)值。

以上是“VB.NET如何共享方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI