程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB.NET >> vb.net繼承的規則

vb.net繼承的規則

編輯:VB.NET

用戶可以使用一個新的關鍵字"Inherts"在一個基本的類的基礎上去建立一個新的類,則繼承類可以繼承,擴充基本類的屬性、方法、事件、數據成員和事件處理程序。
vb.net引入以下表述來支持繼承的表述:
(1)Inherits表述--用來說明當前的類是繼承了哪一個已經存在的類(基本類),Inherits只有在類中才能使用。
(2)NotInheritalbe modifier--防止程序把一個類作為一個基本類。
(3)MustInherit modifier--聲明這個類是不能創建的,必須繼承下來的,惟一一種可以使用該類的方法就是繼承它。
新的繼承的類可以重載一些基本的方法,vb.net使用以下這些關鍵字來控制屬性和方法的重載:
(1)Overridable--允許一個屬性或者方法在繼承類中可以重載。公用的方法的缺省的值為NotOverridable。
(2)Overrides--允許用戶重載一個基本類的屬性或者是方法。
(3)NotOverridable(缺省)--防止一個屬性或方法在繼承類中被重載。
(4)MustOverride--當該關鍵字被使用時,需要繼承的類一定要把該屬性或方法重載,其中方法的表述只包括Sub,Function或者Property。
注意:其他的描述是不允許的,這裡沒有End Sub、End Function描述。有MustOverride方法的類必須被聲明為MustInherit,公有的方法的缺省值為NotOverridable.
並且關於繼承,還有以下准則:
(1)雖然,一個繼承類只能夠從一個類繼承而來,但是它可以產生無數個接口。
(2)一個公有的類不能繼承一個friend的或者私有的類,而且一個friend類不能繼承一個私有的類。
1.使用Mybase訪問基本類的方法
當用戶在繼承類中重載基本類的方法時,可以使用Mybase調用基本類中的方法,以下的表述將向用戶提供關於Mybase的一些更詳細的描述。
(1)MyBase是對基本的類和它的繼承成員的引用。
(2)在MyBase中限定的一些方法,沒有必要在Mybase中再進行定義;它可以間接地在繼承類中進行定義,為了使Mybase可以正確地引用和編譯,一些基礎類必須在引用時包含一個和其參數名稱和類型匹配的方法。
(3)Mybase不能用來限定本身,所以下面的描述是錯誤的:
MyBase.MyBase.BtnOK_Click()
(4)MyBase是一個關鍵字。
(5)MyBase不能被用成一個變量或者是過程,或者用在"IS"比較中,MyBase並不是一個真正的對象。
(6)MyBase可以被用作一個共享成員(shared members);這時它是有值的,因為共享成員是可以被shadowed。
(7)MyBase不能在模塊中使用。
2.使用MyClass
(1)MyClass允許調用一個可以重載的方法,並且確認調用的是方法裡的implementation過程,而不是繼承類裡的重載的方法,以下的使用方法是合法的,用MyClass在一個類中去限定一個方法,這個方法在基本類裡面有定義,但是在這個類中沒有這個方法的定義。這種引用和MyBase.Method具有一樣的意義。
(2)MyClass是一個關鍵字。
(3)MyClass不能被用成一個變量,或者是過程,或者用在"Is"比較中,MyClass並不是一個真正的對象。
(4)MyClass可以引用包含的類以及它的繼承成員,並且能夠被用作訪問在類中定義的公有的成員,但是不能訪問類中的私有成員。
(5)MyClass可以被用作共享成員的限定。
(6)MyClass不能被用在標准模塊中。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved