UID 1
精华 245
积分 75965
威望 744 点
宅币 24265 个
贡献 46222 次
宅之契约 0 份
最后登录 2024-5-3
在线时间 2299 小时
QQ
用户组: 管理员
一只技术宅
UID 1
精华 245
威望 744 点
宅币 24265 个
贡献 46222 次
宅之契约 0 份
在线时间 2299 小时
注册时间 2014-1-26
VB6是一款面向对象的语言,这表示VB6也是满足面向对象的许多特性的。
类继承是个什么概念?假设我们定义一个类叫“人”,人类有许多的共同点,因此“人”也应该有对应的功能——吃饭干活睡觉。
但是如果要细分的话,不同的人吃饭、干活、睡觉的方式都不一样。因此我们需要将“人”这个类在细分为“男人”、“女人”等。这个过程叫“类继承”。
VB6的类继承需要使用的关键字是Implements
首先我们建立一个空的工程,删除Form1,然后添加三个类模块:人.cls,男人.cls,女人.cls和一个模块:modMain.bas
首先我们定义“人”的接口:Option Explicit
Sub 干活()
MsgBox "人干活", vbOKOnly, "人"
End Sub
Sub 吃饭()
MsgBox "人吃饭", vbOKOnly, "人"
End Sub 复制代码 这代码表示“人”的功能是“干活”和“吃饭”。接下来就是关键的一步。
我们在男人.cls中写下这句:然后我们就可以这样写继承的方法了:
可以看到我们可以继承“人”的“吃饭”和“睡觉”。“男人”的代码是这样的:Option Explicit
Implements 人
Sub 人_吃饭()
MsgBox "男人吃饭", vbOKOnly, "男人"
End Sub
Sub 人_干活()
MsgBox "男人干活", vbOKOnly, "男人"
End Sub 复制代码 对应的“女人”的代码是这样的:Option Explicit
Implements 人
Sub 人_吃饭()
MsgBox "女人吃饭", vbOKOnly, "女人"
End Sub
Sub 人_干活()
MsgBox "女人干活", vbOKOnly, "女人"
End Sub 复制代码 那这样的话,我们来实际应用一下吧。
在modMain添加如下的代码:Option Explicit
Sub Main()
Dim 一个人 As New 男人
Dim 另一个人 As New 女人
Dim 奇怪的人 As New 人
一个人.人_吃饭
另一个人.人_吃饭
奇怪的人.吃饭
一个人.人_干活
另一个人.人_干活
奇怪的人.干活
End Sub 复制代码 没错就是这么调用的。
来看看实际的运行效果:
最后你会发现,原先写的“人”的“干活”函数被覆盖了。
也就是说被继承的类其实只是个接口而已。
源码下载:
类继承.7z
(1.06 KB, 下载次数: 6)
参考资料:
http://tieba.baidu.com/p/1795854449 (向楼主致敬)
VB6下载:
http://www.0xaa55.com/thread-95-1-1.html
MSDN下载:
http://www.0xaa55.com/thread-20-1-1.html