VBA类的继承多态实例

打开VB6新建一个工程

'====建立一个类模块,修改名称为:BaseClass 
'(菜单:工程-添加类模块,修改右边属性中类名称)
'先建立基类
Public Info as string   '这是类的一个属性
Public Sub baseSub() '继承特性
  '写你任何对基类方法的定义
End Sub

Private Sub Class_Initialize()
  '构造函数
End Sub

Private Sub Class_Terminate()
  '析构函数
End Sub



'====建立第二个类模块,修改名称为:ImpClass
'建立BaseClass的派生类
Implements BaseClass

Private Sub BaseClass_BaseSub() '实现基类中BaseSub方法
  MsgBox "Hello. This is Imp, inherited form Base Class."
End Sub



'====建立第二个类模块,修改名称为:ImpClass2
'建立BaseClass的派生类
Implements BaseClass

Private Sub BaseClass_BaseSub()
  MsgBox "Hello. This is Imp2, inherited form Base Class"
End Sub




'=-=-= 在窗体上放一个Command1按扭,双击加入代码
Private Sub Command1_Click()
  Dim xImp As New ImpClass      '建立类的对象
  Dim xImp2 As New ImpClass2
  Dim xBase As BaseClass
  
  Set xBase = xImp  '多态特性
  xBase.baseSub
  
  Set xBase = xImp2
  xBase.baseSub
  
  '使用完后释放所定义的对像
  Set xBase = Nothing
  Set xImp = Nothing
  Set xImp2 = Nothing
End Sub

'从上面代码可以看出VB是如何实现面向象的特性:继承、虚拟以及多态的。
'VB只是将很多细节上的东西隐藏起来了。一样可以派生系统类。

你可能感兴趣的:(VBA)