VBA面向对象程序设计(1)
发布时间:2021-06-08
发布时间:2021-06-08
第9章 VBA面向对象的程序设计面向对象的基本概念
VBA面向对象的方法 面向对象编程的综合应用
面向对象的系统观
不同于结构化程序设计思想,基于面向对 象的系统观认为,一个系统是由若干对象 和这些对象间的交互构造而成。 面向对象系统观反映了基于面向对象的方 法如何构造软件系统。
2013-12-28
数据库应用
9.1.1 面向对象核心概念
对象 属性 方法和事件 接口 消息 类
2013-12-28
数据库应用
对象
对象就是现实或抽象世界中具有明确含义 或边界的事物。 例如学生“江华”就是一个对象。 对象是属性和方法(或事件)的封装体。
VBA包括:窗体、命令按钮、组合框等对象。 这些对象用来构成与用户交互的界面元素
2013-12-28
数据库应用
对象示意图对象 消息 接口 方法或事件 属性
2013-12-28
数据库应用
组合框对象的方法
2013-12-28
数据库应用
2. 属性
属性用来刻画对象所具备 的特性, 属性具有属性名和属性值 两个部分。
例如江华的籍贯为“江西赣 州”
“江西赣州”为学生“江华” 的籍贯属性取值
2013-12-28
数据库应用
属性
属性取值不同,可以使对象具有不同的状 态。
对图形化界面中的命令按钮来说,属性用来控 制其显示的特性,
例如“标题”属性的取值为“确定”,决定命令按 钮上显示的文字为“确定”。 命令按钮的“可用”属性决定命令按钮是否有效
2013-12-28
数据库应用
命令按钮部分属性
2013-12-28
数据库应用
3. 方法和事件
方法(或事件)是对象具有的某种处理功 能,在程序代码上表现为一个程序过程。 例如学生“江华”的“注册学籍”、“选 修课程”操作就是学生对象具有的方法。
2013-12-28
数据库应用
方法和事件不同之处
对象的方法调用是使用特定格式的显式调 用。 事件的调用方式是隐式的。
即通常不存在一条语句来说明事件被调用。事 件的调用或触发是由用户的操作来实现的,这 被称为事件驱动。
2013-12-28
数据库应用
事件例子
例如:命令按钮上存在鼠标的单击事件, 当用户使用鼠标指向该命令按钮并单击鼠 标左键时,将触发在命令按钮上单击事件 中预先编写的代码。
2013-12-28
数据库应用
命令按钮具有的事件
通常一个对象包括很多事件,命令按钮具 有的事件。
2013-12-28
数据库应用
4. 接口
接口是对象的特殊属性和方法(或事件), 它表示一个对象为其他对象提供的服务。 这些服务包括一个对象向其他对象公开的 属性和方法(或事
件)。 一个对象接口中的属性和方法(或事件) 为其他对象所知道,故其他对象通过发送 消息到该对象来实现对象间的交互。
2013-12-28
数据库应用
5. 消息
消息实现了对象间的交互。 一个对象通过接口向外界公布其提供的属性和 方法(或事件),其他对象通过发送一个特定 的消息来与这个对象进行交互,可能有结果返 回到发送消息的对象,也可能没有结果返回发 送消息的对象。 消息的描述除了和对象公布的属性和方法(或 事件)有关外,它还有特定的格式。 例如:
Application.<上一级对象>!<下一级对象>.属性名 = 值数据库应用 15
2013-12-28
6. 类
在面向对象程序设计中,为提高程序代码 的重用,一个特定对象的属性和方法(或 事件)由一个特定类来定义。 类可以视为生产多个具有相同属性和方法 (或事件)的对象模板。 一般利用类来组织相似的多个对象。
2013-12-28
数据库应用
类
在面向对象系统和程序中,具有相同结构 和功能的对象一般用类进行描述,并把一 个特定对象称为其所属类的实例。 类描述的是具有相同属性和方法(或事件) 的一组对象。
2013-12-28
数据库应用
类的例子
例如:江华和杨阳都是学生,即他们是 “学生”类的实例,他们都具有“学号”、 “姓名”等属性,同时都具有“注册学 籍”、“选修课程”等操作方法。 为此面向对象方法中提出将具有相同属性 和方法(或事件)对象抽象到类的方法, 即类是对象的抽象,而一个具体对象是某 个类的实例。数据库应用 18
2013-12-28
类的例子
由于类与对象使用相同的描述方式,即都 具有属性和方法(或事件)。这使得类、 对象的概念容易混淆。
“学生”是一个类 “学生A”则是“学生”类的一个对象。
在面向对象概念中,类是对象的抽象,对 象是类的实例。
2013-12-28
数据库应用
9.1.2 类或对象的特性
对象的可标识性 类或对象的封装性 对象的状态性 对象的自治性 类的继承性
2013-12-28
数据库应用
对象的可标识性
每个对象实例都有标识自己的名称(Name) 或标识号(英语为Identifier,简写为ID)。 例如,如果图章具有自动改变序号功能, 则每个实例化出来的图章印,虽具有相同 的属性和操作,但它们具有不同的标识 号——序号不同。
2013-12-28
数据库应用
上一篇:ST 商务:关于2009年度公司非经营性资金占用及其
下一篇:龙湖苗木到场验收标准