当前位置:
文档之家› 第5章VFP语言基础-面向对象程序设计
第5章VFP语言基础-面向对象程序设计
1-20为标准类(控件)(控件箱中带)
兰色字:容器类,其余为非容器类(控件类)
16
容器类
容器类 容器 工具栏 表单集 表单 表格 表格列
页框 页面 命令按钮组 选项按钮组
能包含的对象
任意控件类 任意控件类、页框、容器 表单、工具栏 页框、任意控件类、容器、自定义对象 表格列 标头以及除表单、表单集、工具栏、计时器和其它 列以外的任意对象 页面 任意控件类、容器和自定义对象 命令按钮 选项按钮
类是静态概念,对象是动态概念
“类”定义了某类对象特征以及对象外观和行
为的模板,它刻划了一组具有共同特性的对象群
体
“对象”则是基于某种类所创建的一个实 例
在OOP中,类就像是一个模板,对象都是基于这个模板生
成的:类定义了对象所具有的属性、事件和方法,从而决
定了该类对象的属性和它的行为。Visual FoxPro系统为
子类沿用父类特征的能力 如果父类特征发生改变,则子类将继承这些新特征
多态性(polymorphism)
一些关联的类包含同名的方法程序,但方法程序的 内容可以不同 相同的操作作用于多种类型的对象上获得不同的结 果,增强系统的灵活性、维护性和扩充性
8
特性
封装性 (encapsulation)
说明了包含和隐藏对象信息的能力 高内聚,低耦合
事件(Event) 是每个对象可用以识别和响应的某 些行为和动作。可编写相应的程序代码对事件 动作进行响应。
事件是一种预先定义好的特定动作,被用户行 为或系统事件激活,每个对象都可以对相关事 件的动作进行识别和响应。在多数情况下,事 件是由用户的交互行为产生的。
不同对象能够识别的事件内容是不一致的,在 VFP中,事件集合是固定的(由系统指定), 用户不能进行扩充。(即用户不能自己创建新 事件)
13
容器类与控件类
容器类(Container classes)是能够包容其
它类的基类
容器类对象可以包含其它对象 容器类对象可以作为所包含的对象的父对象
控件类(Control classes)不能够包容其它
类,但可以放在容器类中的基类
控件类对象可以包含在容器中 不能作为其它对象的父对象
15
VFP的29个基类
12
方法(Method)
是对象能够执行的一个操作流程 方法是与对象相关联的过程,也称方法程序 方法程序有系统提供的,也可由用户根据需要自己创
建 VFP方法也均有名称标识,通过名称使用
例:release
方法程序也往往与对象事件相关联 方法实际上就是对象的内部过程(函数),每个类型
的对象都有它自己的方法集。例如在命令按钮对象中, 调用Move方法可以移动按钮的位置。与事件不同的是, 方法可以由用户进行扩展。
到
3开发过程:从“做什么”到 “如何做”
4优点:系统结Biblioteka 性强、便 于设计和理解 5缺点:维护困难
面向对象程序设计
OOP
3
5.3 面向对象的程序设计基础
面向对象的程序设计方法
方法:基于问题对象的自底向上的功能综合,从 内部结构上模拟客观世界
开发过程:从“用什么做”到“要做什么” 优点
以对象为中心的问题求解方法简化程序设计, 更接近现实世界,可降低开发和维护的费用
第五章 程序设计基础
5 .1 程序设计概述 5 .2 结构化程序设计 5 .3 面向对象的程序设计基础
本章重点
结构化程序设计 顺序、选择、循环 过程和函数
面向对象的程序设计 类和对象 属性、方法、事件
2
两种程序设计方法
1本质:功能设计
结构化程序设计2方法:自顶向下、功能分解, 从外部功能上模拟客观世界
用户提供29个基类
6
类
基类:VFP系统提供的内部定义的类,可用于用 户定义子类的基础 子类:是以其它类(已有的)定义为起点,为某 一种对象所建立的新类。子类将继承任何对父 类所做的修改 用户自定义类:与基类相似,由用户自己定义,
也可用于派生子类,但无可视化表示形式
7
特性
继承性(inheritance)
在VFP中,包含在应用程序中的表单及各种控件 都是对象。对象是包含数据和代码的实体。在程序 设计中,用属性、事件和方法来说明对象,属性就 是对象的数据内容,事件和方法则是对象中包含的 代码。
10
属性(Property)
用于定义对象的特征或某一方面的行为。 每个对象都具有属性,属性表明了对象的一些基本特
抽象性(abstraction)
提取一个类或对象与众不同的特征,而 不对该类或对象的所有信息进行处理
9
对象(Object)
对象(Object)是类的实例。
每个对象都具有描述它特征的属性,以及附属于它 的行为。对象把事物的属性和行为封装在一起,是 一个动态的概念。对象是面向对象编程的基本元素, 是“类”的具体实例。 每个对象都具有属性及与之相关的事件和方法
提高程序代码的可重用性 可以和各种模型自然的融合
4
一、类和对象概述1
类: 所谓类(Class),就是一组具有相同结 构、性质、共同操作特点及遵守相同规则的 对象的集合。
它是对某种具有共同属性及其行为特征的对象 群体的抽象描述。
对象:是类的一个实例(包含具体数据、 过程定义)。
5
一、类和对象概述2
1标签
9列表框
17线条
25自定义
2文本框
10微调框
18形状
26控件
3编辑框
11表格
19容器
27工具栏
4命令按钮
12图像
20分隔符*
28表单
5命令按钮组 13计时器
21选项按钮*
29表单集
6选项按钮组 14页框
22标头*
7复选框
15 OLE容器控件 23表格列*
8组合框
16 OLE绑定型控件 24页面*
征,如大小、颜色、所处的位置等 属性构成: 一方面由对象所基于的类决定;另一方面也
可为其定义新的属性 对象的每一种属性,都是与其它对象加以区别的特性,
都具有一定的含义,并可赋予一定的值。
属性值:对象各属性的具体内容指定 可设置内容:由用户(设计者)设置 不可设置内容:只读
11
事件(Event)
17
基类的最小属性集
属性 Class Baseclass Classlibrary parentclass
说明
该类属于何种类型
该类由何种基类派生而来 (Form,commandbutton或custom 等)
该类从属于何种类库
对象所基于的类。若该类直接由VFP基 类派生而来,则Parentclass属性值与 baseclass属性值相同