欢迎来到天天文库
浏览记录
ID:38855460
大小:969.51 KB
页数:69页
时间:2019-06-20
《VBA面向对象程序设计x》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第9章VBA面向对象的程序设计面向对象的基本概念VBA面向对象的方法面向对象编程的综合应用面向对象的系统观不同于结构化程序设计思想,基于面向对象的系统观认为,一个系统是由若干对象和这些对象间的交互构造而成。面向对象系统观反映了基于面向对象的方法如何构造软件系统。2021/8/182数据库应用9.1.1面向对象核心概念对象属性方法和事件接口消息类2021/8/183数据库应用对象对象就是现实或抽象世界中具有明确含义或边界的事物。例如学生“江华”就是一个对象。对象是属性和方法(或事件)的封装体。VBA包括:窗体、命令按钮、组合框等对象。这些对象用来构成与用户交互的界面
2、元素2021/8/184数据库应用对象示意图2021/8/185数据库应用组合框对象的方法2021/8/186数据库应用2.属性属性用来刻画对象所具备的特性,属性具有属性名和属性值两个部分。例如江华的籍贯为“江西赣州”“江西赣州”为学生“江华”的籍贯属性取值2021/8/187数据库应用属性属性取值不同,可以使对象具有不同的状态。对图形化界面中的命令按钮来说,属性用来控制其显示的特性,例如“标题”属性的取值为“确定”,决定命令按钮上显示的文字为“确定”。命令按钮的“可用”属性决定命令按钮是否有效2021/8/188数据库应用命令按钮部分属性2021/8/189数据
3、库应用3.方法和事件方法(或事件)是对象具有的某种处理功能,在程序代码上表现为一个程序过程。例如学生“江华”的“注册学籍”、“选修课程”操作就是学生对象具有的方法。2021/8/1810数据库应用方法和事件不同之处对象的方法调用是使用特定格式的显式调用。事件的调用方式是隐式的。即通常不存在一条语句来说明事件被调用。事件的调用或触发是由用户的操作来实现的,这被称为事件驱动。2021/8/1811数据库应用事件例子例如:命令按钮上存在鼠标的单击事件,当用户使用鼠标指向该命令按钮并单击鼠标左键时,将触发在命令按钮上单击事件中预先编写的代码。2021/8/1812数据库应
4、用命令按钮具有的事件通常一个对象包括很多事件,命令按钮具有的事件。2021/8/1813数据库应用4.接口接口是对象的特殊属性和方法(或事件),它表示一个对象为其他对象提供的服务。这些服务包括一个对象向其他对象公开的属性和方法(或事件)。一个对象接口中的属性和方法(或事件)为其他对象所知道,故其他对象通过发送消息到该对象来实现对象间的交互。2021/8/1814数据库应用5.消息消息实现了对象间的交互。一个对象通过接口向外界公布其提供的属性和方法(或事件),其他对象通过发送一个特定的消息来与这个对象进行交互,可能有结果返回到发送消息的对象,也可能没有结果返回发送消
5、息的对象。消息的描述除了和对象公布的属性和方法(或事件)有关外,它还有特定的格式。例如:Application.<上一级对象>!<下一级对象>.属性名=值2021/8/1815数据库应用6.类在面向对象程序设计中,为提高程序代码的重用,一个特定对象的属性和方法(或事件)由一个特定类来定义。类可以视为生产多个具有相同属性和方法(或事件)的对象模板。一般利用类来组织相似的多个对象。2021/8/1816数据库应用类在面向对象系统和程序中,具有相同结构和功能的对象一般用类进行描述,并把一个特定对象称为其所属类的实例。类描述的是具有相同属性和方法(或事件)的一组对象。20
6、21/8/1817数据库应用类的例子例如:江华和杨阳都是学生,即他们是“学生”类的实例,他们都具有“学号”、“姓名”等属性,同时都具有“注册学籍”、“选修课程”等操作方法。为此面向对象方法中提出将具有相同属性和方法(或事件)对象抽象到类的方法,即类是对象的抽象,而一个具体对象是某个类的实例。2021/8/1818数据库应用类的例子由于类与对象使用相同的描述方式,即都具有属性和方法(或事件)。这使得类、对象的概念容易混淆。“学生”是一个类“学生A”则是“学生”类的一个对象。在面向对象概念中,类是对象的抽象,对象是类的实例。2021/8/1819数据库应用9.1.2类
7、或对象的特性对象的可标识性类或对象的封装性对象的状态性对象的自治性类的继承性2021/8/1820数据库应用对象的可标识性每个对象实例都有标识自己的名称(Name)或标识号(英语为Identifier,简写为ID)。例如,如果图章具有自动改变序号功能,则每个实例化出来的图章印,虽具有相同的属性和操作,但它们具有不同的标识号——序号不同。2021/8/1821数据库应用对象可标识性示例左侧选中的复选框名称为Check0名称“Check0”被用来标识左侧的复选框对象。2021/8/1822数据库应用2.类或对象的封装性类(或对象)的封装性表现在对象将属性和方法(或事件
8、)封装在对
此文档下载收益归作者所有