溫馨提示×

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

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

VB.NET如何實(shí)現(xiàn)繼承類

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

這篇文章主要為大家展示了“VB.NET如何實(shí)現(xiàn)繼承類”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“VB.NET如何實(shí)現(xiàn)繼承類”這篇文章吧。

VB.NET繼承類是一個(gè)這樣的特征即允許你擴(kuò)展類,如果你需要一些功能,你可以創(chuàng)造一個(gè)新類,如果你需要的功能中的部分功能已經(jīng)能由一個(gè)已經(jīng)存在的類提供了,你可以擴(kuò)展原來(lái)的那個(gè)類來(lái)構(gòu)建一個(gè)新類。那么你新建的這個(gè)類成為子類或者VB.NET繼承類,原來(lái)的那個(gè)類稱為父類或者基類。擴(kuò)充類的過(guò)程稱為擴(kuò)展,有時(shí)術(shù)語(yǔ) subclass或inherit 用于描述擴(kuò)展類的行為。在VB.NET中一個(gè)類只能有一個(gè)父類,多個(gè)父類的情況是不允許的。

在語(yǔ)法構(gòu)成上,聲明一個(gè)擴(kuò)展類在類名后面使用分號(hào),分號(hào)后面使用Inherits和父類名,例如,擴(kuò)展類Employee創(chuàng)建一個(gè)新類Manager,代碼如下

Listing 9: Extending a class   Imports System   Class Employee    Dim salary As Decimal = 40000  Dim yearlyBonus As Decimal = 4000   Public Sub PrintSalary()  ' print the salary to the Console  Console.Write(salary)   End Sub   End Class   Class Manager: Inherits Employee  End Class

如果單詞Inherits 顯示在下一行,那么就不需要分號(hào),如:

Class Manager   Inherits Employee  End Class

現(xiàn)在你可以初始化一個(gè)Manager對(duì)象,使用Manager對(duì)象中的成員,如下面的代碼

Class Employee    Public salary As Decimal = 40000  Public yearlyBonus As Decimal = 4000   Public Sub PrintSalary()  ' print the salary to the Console  Console.Write(salary)   End Sub   End Class   Class Manager: Inherits Employee  End Class   Module Module1  Public Sub Main()   Dim manager As Manager   manager = New Manager()   manager.PrintSalary()  End Sub  End Module

下面的例子中顯示了在manage類中添加一個(gè)新方法PrintBonus

Class Manager: Inherits Employee   Public Sub PrintBonus()  Console.Write(yearlyBonus)   End Sub  End Class

注意成員訪問(wèn)限制的使用,比如說(shuō)如果設(shè)定yearlyBonus域?yàn)樗接?,那么manage類就不能訪問(wèn)他,否則在編譯時(shí)就會(huì)得出錯(cuò)誤結(jié)論。

VB.NET繼承類只是一個(gè)普通的實(shí)踐。事實(shí)上,.NET Framework類庫(kù)由不同層次的類組成,他們分別繼承于其他的類。比如,Windows.Forms名字空間中的button類是 ButtonBase類的子類,而ButtonBase類本身又是Control類的子類,所有類最終都以System.Object作為他們的根,在.NET Framework類庫(kù)中System.Object又稱為根或者超類。

Public Class MyForm : Inherits System.Windows.Forms.Form
End Class

聲明的這個(gè)空白類,經(jīng)編譯執(zhí)行后生成一個(gè)windows表單,你一行代碼都用不作寫就可以創(chuàng)建一個(gè)表單,這是因?yàn)閙yform繼承于System.Windows.Forms.Form,他也繼承了form的功能。

以上是“VB.NET如何實(shí)現(xiàn)繼承類”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

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

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎ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