基于VB的封装、多态和继承特性的研究
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一
面 向对 象和基 于对 象
面向对象是 一种思想 ,是我们考虑事 情的方法 , 通常表现为我们是将问题的解决 按 照过 程 方式 来 解决 , 还是 将 问题 抽 象为 一 个对 象来 解决 它 。 多情况 下 , 们 会小 知 很 我 不觉 的按 照过 程 方式 来解 决 它 , 为 我们 通
是 面 向 对 象 的 程 序 设 计 语 言 , J VA C P A S RTT是基 丁对象的程序设计语 苦 ( 脚本语言) a ac p并不支持所有jv 而 , vS f t J i aa 向对象的功能 ,只是支持其 中一部分。 我们可理解 “ 纯粹” 的面向对象程序设 计 方法 是 什么 样的 : ()所有 东 两都 是对 象 。可将 对象 想 象 1 成 一种 新 变 量 ; 保存 着数 据 , 可要 求 它 但 它对 自身进行操作。理论上讲 , 可从要解决 的 问题 身上 提 出所 有概 念性 的 组件 , 后在 然 程序中将其表达为 ・ 个对象 。 ( 2 序是 一大 堆对 象 的组 合 ;通 过 消 )程 息传递 , 各对象知道 自己该做些什么。为 r 向对象发出请求, 需向那个对象 “ 发送 一 条 消息” 更具体地讲, 。 可将消息想象为一个调 用请求, 它调 用的是 从 属 于 目标 对 象的 一 个 子 例程 或 函数 。 () 3 每个对象都有 自己的存储空 间,可 容纳其他对象。 或者说, 通过封装现有对象 , 可制作出新 型对象 。 所以, 尽管对象的概念 非常简单 , 但在程序中却可达到任意高的复 杂程 度 。 () 每个对象都有一种类犁。根据语 4 法, 每个对象都是某个 “ 的 一 “ 类” 个 实例” 。 其中,“ 类”( l s Ca )是 “ s 类型”( y )的 Tp e 同义 词 。 个类 最重 要 的特征 就 是 “ 将 什 一 能 么消 息发给 它 ?” 。 () 一 5 同 类所有对象都能接收相同的消 息 。 实 际足 别有含 义 的 一 这 种说 法 , 大家 不 久便 能理 解 。由于类 型 为 “ ”( i l)的 圆 Cr e c 个 对象 也属 于 类型 为 “ 形状 ”(h p )的 S ae 个对 象 ,所 以 一个 圆完 全 能 接 收 形状 消 息。这意味蕾可让程序代码统一指挥 “ 形 状” 令其 自动控制所有符合 “ , 形状” 描述的 对象 , 中 自然 包括 “ 。 一特 性称 为 对 其 圆” 这 象的 “ 可替换性” 是 O 最重要的概念之 , OP
一
一
目 隐藏对象的属性和实现细节 , 『 J 仅仅对外公 开按 u。为了加快程序项 目的开发速度, 提 高程序代码的可重用性 , 微软提出了一种广 泛 应用 干 W id ws 列的 代码封 装技 术一 no 系 Ate c vx技术, i 即平常我们所说的“ 组件” 。 在V 的集成开发环境当中, B6 我们就可 以 很轻 松地 设计 Acv X项 目 , 计 A t e te i 设 c vX i 项 目实际 上就 是 对类 模块 进行 封 装的 过程 , 在 A Wi c e 件编 译好 之 后 ,只有类 N. X组 t  ̄公 - 开 的数 据 , 包括 属性 、方法 和事 件 ,能够 被 客 户程 序 调用 , 它的 窗体 、 块等 , 外 其 模 对 都是屏蔽的 ,外部应用程序都不能进行访 问。有了组件技术, 在开发应用程序系统的 时候, 就可以封装一些功能在组件中, 从而 可以把应用程序的功能划分为 “ 程序” 级别 的 , 模块 化 的设 计和 开发 提供 了更多 的实 为 现方法 。 同时, 在程序代码的安全和规范方 面 也得 到 r 好地 体现 。 装 的 目的即是 使 很 封 对 象 的定 义和 实现分 离 。
常 习惯于 考虑 解 决问 题的 方法 , 而 是 考 虑
将要解决问题抽象为对象去解决它, 这也是 我们 经常混淆这个概念的原 因之 。 面向对象方法是以认识论为基础 ,用 对象来理解和分析 问题空 间,并 设计和开 发 出 由对 象 构 成 的软 件 系统 的 方 法 。 }于 l 1 问题空 间和解空间都是 由对象组成的 ,这 样可 以消除 由于 问题 空 间和求解 空 间结 构 卜 的 不一 致 带 来 的 问题 。 简言 之 ,面 向 对 象 就是 面 向事 情 本 身 ,面 向对 象 的 分 析过 程 就是认识客观世界 的过程 。通常 “ 基于对 象”是使用对象 ,但是无法利用现有的对 象模板产生新的对 象类型 ,继而产生新的 对象 ,也就 是说 “ 基于 对象 ”没 有继承 的特点 。现在的很 多流行技术都是基于对 象的 ,它们使用一些封装好的对象,调用 对象的方法,设 置对象的属性 。但是 它们 无法让程序员派生新对象类型。他们 只能 使用现有对象的方法和属 性。例如 :J v aa
驾 ≯
_ ◆ _
v ; 向/ 于对 象 ; ; 装 ; B面 基 i 6 ( s lB s .0简称 v ) 美阁微 u c B是 软 ( co t公司推 出 的一种 W id ws 用 Mi mf r ) no 应 程序开发工具 , 它既继承了B I 语言简单 ASC 易学 、 作 方便 等优 点 ,又 引入 r 向对象 操 面 的编程机制和可视化程序设计方法, 从而极 大地提高了应用程序的开发效率。 我们 经常 在 网 上或 书 刊 上 看 到这 样 的 话语 ,V 6 0 B . 是基 于 对象 的 ,只 支持 封装 , 不具 有继 承 陛 、 多态 性 。下而 我们 就从 基 干 对象 和面 向对 象 的概 念谈 起 , 并用 相 关实 例 论证 V B在封装 、继承和多态方面的体现。
中国科技信息 2 0 年 第 2 期 08 4
C I CEC N EH OO Y I OIA I e。 0 HN S I EA D TCN LG N F TO 0c2 8 A N F M N 0
l
|
|
≮
I l
多态 和继承特性 的研究
周训斌 长沙通信职业技 术学院 4 O 1 10 5
0 0 ≯ l _ : l _
v l B引 入 面向 对 象 的 编 程 机 制 , 使 该 语 言 具
有 面向对 象语言 的封 装 、继承和 多态三 个主 要 的特征 。极 大地提 高 了应 用程序 的开 发效 率 ;本文 对其特 性 进行 详 细而 深入 的研 完 ,
并从 通过 相 关实 伊 阐 述 V j B的 这 些 面向 对 象的 特 槛
面 向对 象和基 于对 象
面向对象是 一种思想 ,是我们考虑事 情的方法 , 通常表现为我们是将问题的解决 按 照过 程 方式 来 解决 , 还是 将 问题 抽 象为 一 个对 象来 解决 它 。 多情况 下 , 们 会小 知 很 我 不觉 的按 照过 程 方式 来解 决 它 , 为 我们 通
是 面 向 对 象 的 程 序 设 计 语 言 , J VA C P A S RTT是基 丁对象的程序设计语 苦 ( 脚本语言) a ac p并不支持所有jv 而 , vS f t J i aa 向对象的功能 ,只是支持其 中一部分。 我们可理解 “ 纯粹” 的面向对象程序设 计 方法 是 什么 样的 : ()所有 东 两都 是对 象 。可将 对象 想 象 1 成 一种 新 变 量 ; 保存 着数 据 , 可要 求 它 但 它对 自身进行操作。理论上讲 , 可从要解决 的 问题 身上 提 出所 有概 念性 的 组件 , 后在 然 程序中将其表达为 ・ 个对象 。 ( 2 序是 一大 堆对 象 的组 合 ;通 过 消 )程 息传递 , 各对象知道 自己该做些什么。为 r 向对象发出请求, 需向那个对象 “ 发送 一 条 消息” 更具体地讲, 。 可将消息想象为一个调 用请求, 它调 用的是 从 属 于 目标 对 象的 一 个 子 例程 或 函数 。 () 3 每个对象都有 自己的存储空 间,可 容纳其他对象。 或者说, 通过封装现有对象 , 可制作出新 型对象 。 所以, 尽管对象的概念 非常简单 , 但在程序中却可达到任意高的复 杂程 度 。 () 每个对象都有一种类犁。根据语 4 法, 每个对象都是某个 “ 的 一 “ 类” 个 实例” 。 其中,“ 类”( l s Ca )是 “ s 类型”( y )的 Tp e 同义 词 。 个类 最重 要 的特征 就 是 “ 将 什 一 能 么消 息发给 它 ?” 。 () 一 5 同 类所有对象都能接收相同的消 息 。 实 际足 别有含 义 的 一 这 种说 法 , 大家 不 久便 能理 解 。由于类 型 为 “ ”( i l)的 圆 Cr e c 个 对象 也属 于 类型 为 “ 形状 ”(h p )的 S ae 个对 象 ,所 以 一个 圆完 全 能 接 收 形状 消 息。这意味蕾可让程序代码统一指挥 “ 形 状” 令其 自动控制所有符合 “ , 形状” 描述的 对象 , 中 自然 包括 “ 。 一特 性称 为 对 其 圆” 这 象的 “ 可替换性” 是 O 最重要的概念之 , OP
一
一
目 隐藏对象的属性和实现细节 , 『 J 仅仅对外公 开按 u。为了加快程序项 目的开发速度, 提 高程序代码的可重用性 , 微软提出了一种广 泛 应用 干 W id ws 列的 代码封 装技 术一 no 系 Ate c vx技术, i 即平常我们所说的“ 组件” 。 在V 的集成开发环境当中, B6 我们就可 以 很轻 松地 设计 Acv X项 目 , 计 A t e te i 设 c vX i 项 目实际 上就 是 对类 模块 进行 封 装的 过程 , 在 A Wi c e 件编 译好 之 后 ,只有类 N. X组 t  ̄公 - 开 的数 据 , 包括 属性 、方法 和事 件 ,能够 被 客 户程 序 调用 , 它的 窗体 、 块等 , 外 其 模 对 都是屏蔽的 ,外部应用程序都不能进行访 问。有了组件技术, 在开发应用程序系统的 时候, 就可以封装一些功能在组件中, 从而 可以把应用程序的功能划分为 “ 程序” 级别 的 , 模块 化 的设 计和 开发 提供 了更多 的实 为 现方法 。 同时, 在程序代码的安全和规范方 面 也得 到 r 好地 体现 。 装 的 目的即是 使 很 封 对 象 的定 义和 实现分 离 。
常 习惯于 考虑 解 决问 题的 方法 , 而 是 考 虑
将要解决问题抽象为对象去解决它, 这也是 我们 经常混淆这个概念的原 因之 。 面向对象方法是以认识论为基础 ,用 对象来理解和分析 问题空 间,并 设计和开 发 出 由对 象 构 成 的软 件 系统 的 方 法 。 }于 l 1 问题空 间和解空间都是 由对象组成的 ,这 样可 以消除 由于 问题 空 间和求解 空 间结 构 卜 的 不一 致 带 来 的 问题 。 简言 之 ,面 向 对 象 就是 面 向事 情 本 身 ,面 向对 象 的 分 析过 程 就是认识客观世界 的过程 。通常 “ 基于对 象”是使用对象 ,但是无法利用现有的对 象模板产生新的对 象类型 ,继而产生新的 对象 ,也就 是说 “ 基于 对象 ”没 有继承 的特点 。现在的很 多流行技术都是基于对 象的 ,它们使用一些封装好的对象,调用 对象的方法,设 置对象的属性 。但是 它们 无法让程序员派生新对象类型。他们 只能 使用现有对象的方法和属 性。例如 :J v aa
驾 ≯
_ ◆ _
v ; 向/ 于对 象 ; ; 装 ; B面 基 i 6 ( s lB s .0简称 v ) 美阁微 u c B是 软 ( co t公司推 出 的一种 W id ws 用 Mi mf r ) no 应 程序开发工具 , 它既继承了B I 语言简单 ASC 易学 、 作 方便 等优 点 ,又 引入 r 向对象 操 面 的编程机制和可视化程序设计方法, 从而极 大地提高了应用程序的开发效率。 我们 经常 在 网 上或 书 刊 上 看 到这 样 的 话语 ,V 6 0 B . 是基 于 对象 的 ,只 支持 封装 , 不具 有继 承 陛 、 多态 性 。下而 我们 就从 基 干 对象 和面 向对 象 的概 念谈 起 , 并用 相 关实 例 论证 V B在封装 、继承和多态方面的体现。
中国科技信息 2 0 年 第 2 期 08 4
C I CEC N EH OO Y I OIA I e。 0 HN S I EA D TCN LG N F TO 0c2 8 A N F M N 0
l
|
|
≮
I l
多态 和继承特性 的研究
周训斌 长沙通信职业技 术学院 4 O 1 10 5
0 0 ≯ l _ : l _
v l B引 入 面向 对 象 的 编 程 机 制 , 使 该 语 言 具
有 面向对 象语言 的封 装 、继承和 多态三 个主 要 的特征 。极 大地提 高 了应 用程序 的开 发效 率 ;本文 对其特 性 进行 详 细而 深入 的研 完 ,
并从 通过 相 关实 伊 阐 述 V j B的 这 些 面向 对 象的 特 槛