• 您的位置我爱Aspx >> VB.Net >> 全面剖析VB.NET(3)
  • 全面剖析VB.NET(3)

  • 作者:aspxer  来源:internet  日期:2007-5-20 13:52:10  关键字:.net
  • 全面剖析VB.NET(3)

    p;三、完善的面向对象支持

    VB.NET提供了完善的面向对象编程支持,是一种真正的OO语言。

    完善的面向对象支持应该包括封装(Encapsulation),继承(Inheritance)和多态性(Polymorphism)。当前的VB6已经部分地实现了这些支持,但仍因某些地方未能符合标准而受到责难。

    封装是指对象只显露公用的方法和属性。VB6已经提供了健壮的封装支持,具体通过Public和Private关键词实现,这两个关键词既可以用于方法,也可以用于属性。VB.NET进一步完善了VB6的封装支持,增加了一个Protected关键词。

    多态性即为“多种形态”,VB从4.0开始已经提供多态性支持,它在VB.NET中没有什么变化。然而,由于VB.NET中类支持两种类型的继承——接口继承和实现继承,多态性将有更广泛的用途。

    VB6已经支持一种称为接口继承(interface inheritance)的继承形式,VB.NET支持实现继承(implementation inheritance)完善了继承机制。过去,我们用VB的接口继承模拟实现对象继承,但现在不必再采用这种模拟技术。正如其他面向对象的语言,在VB.NET中我们可以覆盖基类的方法和属性,也可以借助多态性创建出健壮的、可升级的组件。例如,假设有一个从基类Crane继承的ForkLift类,利用下面的代码可以覆盖基类中Lift方法的默认实现:

    Public Class ForkLift

    Inherits Crane

    Overrides Sub Lift(ByRef _

    Height As Double)

    Height = Height + 10

    End Sub

    End Class

    VB.NET不仅允许覆盖方法或属性,而且还支持方法重载(Overload)。重载是一种定义具有相同名字、不同数据类型的方法或者属性的能力。例如,假设有一个对不同数据类型的数组进行排序的组件,我们无需为它定义多个排序方法的名字(每种数据类型一个方法名字);相反,我们可以重载单个方法名字:

    我对这篇文章有话说?
  • 广告位招租,广告代号:content_468_15
  • 上一篇:全面剖析VB.NET(2)
    下一篇:全面剖析VB.NET(4)