确切地说VB6不能实现真正意义上的类继承(如C++中的继承),但是通过其关键字Implements也提供了类似的功能。

我们先建一个类模块CBase.cls

代码如下:

Private mvarBaseProperty As String

Public Sub BaseFunction()

MsgBox “Hello world!”

End Sub

Public Property Let BaseProperty(ByVal VData As String)

mvarBaseProperty = VData

End Property

Public Property Get BaseProperty() As String

BaseProperty = mvarBaseProperty

End Property

接下来我们新建一类模块(Cinherit.cls),代码如下,其间有关键的注释

Implements CBase            ''''注意此关键字

Dim m_BaseProperty As String

''''---------------------------------------------------------------------

''''虚线间的代码即是从CBase类继承的.

''''注意其格式如下:基类_属性名(或方法名)

''''其方法的声明关键字public也变为了private

Private Property Get CBase_BaseProperty() As String

BaseProperty = m_BaseProperty

End Property

Private Property Let CBase_BaseProperty(ByVal VData As String)

m_BaseProperty = VData

End Property

Private Sub CBase_BaseFunction()

MsgBox "Inherit"

End Sub

''''---------------------------------------------------------------------

''''此方法是继承类自己的方法

Public Sub InheritMsg()

MsgBox "my owner msg"

End Sub

现在我们新建一窗体来做测试,我们把测试代码放在Form_Load事件中

测试一:

Dim objTest As CBase

Set objTest = New CBase

With objTest

.BaseFunction

End With

Set objTest = Nothing

运行程序,弹出base,说明是调用Cbse中的BaseFunction函数

测试二:

Dim objTest As CBase

Set objTest = New CInherit

With objTest

.BaseFunction

End With

Set objTest = Nothing

运行程序,弹出Inherit,说明是调用Cinherit中的Base函数

测试三:

Dim objTest As CInherit

Set objTest = New CInherit

With objTest

.InheritMsg

End With

Set objTest = Nothing

运行程序,弹出my owner function,说明继承的类可以使用自己的函数或属性.

转载于:https://www.cnblogs.com/YuXingGao/archive/2009/01/08/1372238.html

VB6中的面向对象编程---实现类继承相关推荐

  1. Python面向对象编程:类继承和其衍生术语

    Python面向对象编程03:类继承和其衍生术语 前面我们讲到过正则表达式字符等,上一篇分享了面向对象编程和类的结构,最后稍微提到了继承. Python面向对象编程:深度认识类class_ Pytho ...

  2. [转载] Python3基础:08_02_面向对象编程(OOP)——类和对象

    参考链接: Python中的面向对象编程OOP | 3(继承,对象示例,issubclass和super) 0.前言   这篇博文将讲述Python面向对象开发中的类与对象的概念,包括对类和对象的理解 ...

  3. C++ Primer 学习笔记_72_面向对象编程 --句柄类与继承[续]

    面向对象编程 --句柄类与继承[续] 三.句柄的使用 使用Sales_item对象能够更easy地编写书店应用程序.代码将不必管理Item_base对象的指针,但仍然能够获得通过Sales_item对 ...

  4. python面向对象编程 -- 封装、继承

    面向对象编程 -- 封装.继承 面向对象编程三要素:封装.继承和多态.本文主要看和封装.继承相关的概念:在python中多态的概念比较模糊,本文不做讨论. 1 封装 封装:将数据和操作组装到一起,对外 ...

  5. JS中的面向对象编程

    JS中的面向对象编程 小课堂 目录 1.背景介绍 2.知识剖析 3.常见问题 4.解决方案 5.编码实战 6.扩展思考 7.参考文献 8.更多讨论 1.背景介绍 什么是对象? ECMA-262把对象定 ...

  6. python采用面向对象编程模式吗_如何理解 Python 中的面向对象编程?

    现如今面向对象编程的使用非常广泛,本文我们就来探讨一下Python中的面向对象编程. 作者 | Radek Fabisiak 译者 | 弯月,责编 | 郭芮 以下为译文: Python支持多种类型的编 ...

  7. python如何初始化对象数组_如何理解Python中的面向对象编程?

    (由Python大本营付费下载自视觉中国) 作者 | Radek Fabisiak 译者 | 弯月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 现如今面向对象编程的使用非常广泛,本文 ...

  8. 如何理解 Python 中的面向对象编程?

    现如今面向对象编程的使用非常广泛,本文我们就来探讨一下Python中的面向对象编程. 作者 | Radek Fabisiak 译者 | 弯月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews ...

  9. VSCode自定义代码片段9——JS中的面向对象编程

    JavaScript的面向对象编程 {// JS'OOP// 9 如何自定义用户代码片段:VSCode =>左下角设置 =>用户代码片段 =>新建全局代码片段文件... =>自 ...

最新文章

  1. Apr.2010 Microsoft MVP连任
  2. 无法找到脚本文件adsutil.vbs的解决方法
  3. HBase 数据导入功能实现方式解释
  4. centos7如何安装samba-client_如何在基本图形模式下最小化全新安装CentOS 7?
  5. 凸透镜成像实验软件_论文丨几何光学实验在初中物理教学中的应用
  6. 2019年湘潭大学程序设计竞赛
  7. NIO 之 MappedByteBuffer
  8. python类基础知识注意点
  9. tgp饥荒 服务器无响应,tgp饥荒联机版缺少fmod_event.dll文件怎么办?具体解决方法介绍...
  10. mysql英文介绍_每日科技英文48: MySQL C API简介
  11. 【DB2学习文档之七】SQL for DB2
  12. HTML5前端开发就业前景,高薪背后的原因分析!
  13. c语言 怎么把数据存储,急求如何将下列C语言程序数据存储到文件中?
  14. 常用网页设计html特殊符号转义字符编码查询对照表
  15. 战斗部毁伤效能评估软件系统
  16. Apture 电容麦克风接口设置
  17. jre包括jvm和java核心类库_包含JVM标准实现及Java核心类库
  18. 163VIP邮箱如何注册?163VIP企业邮箱申请介绍!
  19. 第三章微分中值定理及导数应用(柯西中值和泰勒公式)
  20. 如何退出python命令行

热门文章

  1. Javascript图形处理库 -- Raphaël
  2. html无法显示null打开,js出现null错误的原因?
  3. jsp页面 字体颜色 白色_CSS 文本字体颜色(CSS color)
  4. python 多帧 超分辨_利用python-opencv生成视频帧数控制,和常见错误总结
  5. #6277. 数列分块入门 1
  6. windows 传输目录文件到linux pscp: xxx: not a regular file
  7. Spring Boot整合Swagger3的分组问题
  8. mysql genlog 分析_使用mysqlsla 分析 mysql logs
  9. codeigniter index.php,CodeIgniter如何隐藏index.php | 学步园
  10. mysql java 社工库_社工库源码