基于.net 4面向对象编程高级主题(一):类的继承与方法重写

基于.net 4面向对象编程高级主题(一):类的继承与方法重写

ID:13546876

大小:77.00 KB

页数:6页

时间:2018-07-23

基于.net 4面向对象编程高级主题(一):类的继承与方法重写_第1页
基于.net 4面向对象编程高级主题(一):类的继承与方法重写_第2页
基于.net 4面向对象编程高级主题(一):类的继承与方法重写_第3页
基于.net 4面向对象编程高级主题(一):类的继承与方法重写_第4页
基于.net 4面向对象编程高级主题(一):类的继承与方法重写_第5页
资源描述:

《基于.net 4面向对象编程高级主题(一):类的继承与方法重写》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、基于.NET4面向对象编程高级主题(一)类的继承与方法重写继承(Inheritance)VisualBasic.NET支持“继承”,这是一种定义作为派生类(DerivationClass)基础的类的能力。派生类继承并可扩展基类的属性(Property)、方法(Method)和事件(Event)。派生类还可以用新的实现重写继承的方法。默认情况下,用VisualBasic.NET创建的所有类都是可继承的。继承使您得以只编写和调试类一次,然后将该代码作为新类的基础不断重复使用。继承还使您得以使用基于继承的多态性(Polymorphism),这是一种定义如下类

2、的能力:这些类可由客户端代码在运行时交换使用,但具有功能不同而名称相同的方法或属性。 通俗的说,继承就是子承父业,假设定义一个Father类作为基类(父类),然后定义一个子类(派生类)Son,在Son这个类中添加以下突出显示的代码:(Code1)PublicClassSon  InheritsFatherEndClass 这时候,就会发现Son是从父类Father里面继承下来的,假设Father有Sport,EditProgram这两个方法,以及Tall这个属性,那么子类同样包含了父类所具备的Sport,EditProgram这两个方法,以及Tall这

3、个属性,但是这些方法和属性可以在子类中进行重写(Overridable)我们在设计Windows应用程序(Application)窗体的时候,VisualStudio会自动创建一个空白的窗体,而这个窗体则是从Form类中继承下来的,如果打开名字为Form1的空白Windows窗体设计视图的Design文件,则会发现以下突出显示的代码:(Code2)_PartialClassForm1  InheritsSystem.Wi

4、ndows.Forms.Form  _  ProtectedOverridesSubDispose(ByValdisposingAsBoolean)    Try      IfdisposingAndAlsocomponentsIsNotNothingThen        components.Dispose()      EndIf    Finally      MyBase.Dispose(disposing)    EndTry  EndSub  Priva

5、tecomponentsAsSystem.ComponentModel.IContainer  _  PrivateSubInitializeComponent()    components=NewSystem.ComponentModel.Container()    Me.AutoScaleMode=System.Windows.Forms.AutoScaleMode.Font    Me.Text="Form1"  EndSubEndClass重写(Overri

6、dable)通常,派生类继承基类的方法,因此在调用对象(Object)继承方法的时候,调用和执行的是基类的实现。但是,有时需要对派生类中的继承方法有不同的实现。例如,假设动物类存在“跑”的方法,从中派生出马和狗,马和狗的跑得形态是各不相同的,因此同样方法需要两种不同的实现,这就需要“重新编写”基类中的方法。“重写”基类方法就是修改它的实现或者说在派生类中重新编写。重写方法通常使用Overridable关键字来修饰并说明,指定属性或过程可由派生类中同名的属性或过程进行重写,比如说存在两个类Father和Son,Son继承于Father,Father类中存

7、在一个方法Sport,其详细代码突出显示如下:(Code3)PublicClassFather  ……  PublicFunctionSport()AsString      Return"Ilovesports!"  EndFunction  ……EndClass现在从Father类继承下来的Son中,我们假设Son不喜欢Sport,则我们可以修改这个从Father类继承的方法:(Code4)PublicClassSon  InheritsFather  ……   PublicOverridable FunctionSport()AsString  

8、    Return"Ihatesports!"  EndFunction  ……EndCla

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。