VB.NET继承规则详细介绍

开发 后端
想要掌握一个技术的应用,首先要清楚的基本概念,以及一些使用规则等。那么就让我们先从VB.NET继承规则开始,来学习继承这一知识点。

VB.NET中也有继承相关应技术,而且相对于初学者来说并不是很好理解这一应用。下面就首先让我们从VB.NET继承规则来学习,从中了解到这一应用的基本概念,从而方便我们将来的深入学习。#t#

用户可以使用一个新的关键字"Inherts"在一个基本的类的基础上去建立一个新的类,则继承类可以继承,扩充基本类的属性、方法、事件、数据成员和事件处理程序。

VB.NET引入以下表述来支持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.并且关于继承,还有以下VB.NET继承规则:

(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过程,而不是继承类里的重载的方法,以下的使用方法是VB.NET继承规则中合法的,用MyClass在一个类中去限定一个方法,这个方法在基本类里面有定义,但是在这个类中没有这个方法的定义。这种引用和MyBase.Method具有一样的意义。

(2)MyClass是一个关键字。

(3)MyClass不能被用成一个变量,或者是过程,或者用在"Is"比较中,MyClass并不是一个真正的对象。

(4)MyClass可以引用包含的类以及它的继承成员,并且能够被用作访问在类中定义的公有的成员,但是不能访问类中的私有成员。

(5)MyClass可以被用作共享成员的限定。

(6)MyClass不能被用在标准模块中。

责任编辑:曹凯 来源: wewill.cn
相关推荐

2009-10-28 09:55:29

VB.NET MyCl

2009-11-10 12:42:47

VB.NET Prin

2009-10-12 15:02:51

VB.NET动态控件

2010-01-18 11:20:13

VB.NET默认属性

2010-01-08 16:19:00

VB.NET类型单位命

2010-01-08 13:35:35

VB.NET写Log方

2010-01-15 10:56:50

VB.NET继承实现多

2009-11-10 12:48:17

VB.NET三维模型

2010-01-08 09:43:21

VB.NET汉字转换

2010-01-08 15:03:12

VB.NET类属性

2010-01-08 14:14:27

VB.NET使用Fin

2010-01-14 18:22:05

VB.NET硬盘速度测

2010-01-22 14:19:38

VB.NET调用jar

2009-10-19 08:55:22

VB.NET多重继承

2010-01-14 17:41:57

VB.NET变量范围

2010-01-13 16:15:47

VB.NET消息队列

2009-10-13 17:03:55

VB.NET面向对象

2010-01-07 15:18:10

VB.NET常量

2009-11-02 15:45:03

VB.NET IEnu

2009-10-12 13:54:22

VB.NET Data
点赞
收藏

51CTO技术栈公众号