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

創(chuàng)新互聯(lián)公司專(zhuān)業(yè)為企業(yè)提供宜州網(wǎng)站建設(shè)、宜州做網(wǎng)站、宜州網(wǎng)站設(shè)計(jì)、宜州網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、宜州企業(yè)網(wǎng)站模板建站服務(wù),10多年宜州做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
在語(yǔ)法構(gòu)成上,聲明一個(gè)擴(kuò)展類(lèi)在類(lèi)名后面使用分號(hào),分號(hào)后面使用Inherits和父類(lèi)名,例如,擴(kuò)展類(lèi)Employee創(chuàng)建一個(gè)新類(lèi)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類(lèi)中添加一個(gè)新方法PrintBonus
- Class Manager: Inherits Employee
- Public Sub PrintBonus()
- Console.Write(yearlyBonus)
- End Sub
- End Class
注意成員訪問(wèn)限制的使用,比如說(shuō)如果設(shè)定yearlyBonus域?yàn)樗接校敲磎anage類(lèi)就不能訪問(wèn)他,否則在編譯時(shí)就會(huì)得出錯(cuò)誤結(jié)論。
#t#VB.NET繼承類(lèi)只是一個(gè)普通的實(shí)踐。事實(shí)上,.NET Framework類(lèi)庫(kù)由不同層次的類(lèi)組成,他們分別繼承于其他的類(lèi)。比如,Windows.Forms名字空間中的button類(lèi)是 ButtonBase類(lèi)的子類(lèi),而B(niǎo)uttonBase類(lèi)本身又是Control類(lèi)的子類(lèi),所有類(lèi)最終都以System.Object作為他們的根,在.NET Framework類(lèi)庫(kù)中System.Object又稱(chēng)為根或者超類(lèi)。
Public Class MyForm : Inherits System.Windows.Forms.Form
End Class
聲明的這個(gè)空白類(lèi),經(jīng)編譯執(zhí)行后生成一個(gè)windows表單,你一行代碼都用不作寫(xiě)就可以創(chuàng)建一個(gè)表單,這是因?yàn)閙yform繼承于System.Windows.Forms.Form,他也繼承了form的功能。
當(dāng)前題目:強(qiáng)烈推薦VB.NET繼承類(lèi)
本文路徑:http://fisionsoft.com.cn/article/dhsggoo.html


咨詢(xún)
建站咨詢(xún)
