第八章 面向对象的程序设计
1 第 八 章 面 向 对 象 的 程 序 设 计
本章目录 录第一节面向对象的概念 上页 x第二节 Visua1 FoxPro6.0中的类与对象 x第三节类与对象的程序设计方法 下页 x第四节类和对象可视化设计方法 退出
目录 上页 下页 退出 2 本 章 目 录 第一节 面向对象的概念 第二节 Visual FoxPro 6.0中的类与对象 第三节 类与对象的程序设计方法 第四节 类和对象可视化设计方法
第一节面向对象的概念 目录 、面向对象的概念 在面向对象的程序设计( Object-Oriented Programming) 上页中,对象( Object是组成程序的构件,就好像在面向过程 的结构化程序设计方法中的子程序和函数一样。 下页 在面向对象的程序设计方法中,程序设计人员不是完 全按过程对求解问题进行分解,而是按照面向对象的观 退出 点来描述问题、分解问题,最后选择一种支持面向对象 方法的程序语言来解决问题
目录 上页 下页 退出 3 第一节 面向对象的概念 一、面向对象的概念 在面向对象的程序设计(Object-Oriented Programming ) 中,对象(Object)是组成程序的构件,就好像在面向过程 的结构化程序设计方法中的子程序和函数一样。 在面向对象的程序设计方法中,程序设计人员不是完 全按过程对求解问题进行分解,而是按照面向对象的观 点来描述问题、分解问题,最后选择一种支持面向对象 方法的程序语言来解决问题
1.对象( Object) 客观世界里的任何实体都可以被看作是对象。对象 可以是具体的物,也可以指某些概念 目录 从编程的角度来看,对象是一种将数据和操作过程 结合在一起的数据结构,或者是一种具有属性(数据) 上页 和方法(过程和函数)的集合体。事实上程序中的对象 就是对客观世界中对象的一种抽象描述 在面向对象程序设计中,“对象”是对现实世界中 下页 实体的一种模拟工具。如命令按钮、文本框、菜单 具栏等 出2.属性( Property) 所谓属性,就是对象的特性。在面向对象程序设计 中,每个对象都具有自己的属性
目录 上页 下页 退出 4 1.对象(Object) 客观世界里的任何实体都可以被看作是对象。对象 可以是具体的物,也可以指某些概念。 从编程的角度来看,对象是一种将数据和操作过程 结合在一起的数据结构,或者是一种具有属性(数据) 和方法(过程和函数)的集合体。事实上程序中的对象 就是对客观世界中对象的一种抽象描述。 在面向对象程序设计中,“对象”是对现实世界中 实体的一种模拟工具。如命令按钮、文本框、菜单、工 具栏等。 2.属性(Property) 所谓属性,就是对象的特性。在面向对象程序设计 中,每个对象都具有自己的属性
3.事件( Event) 事件”是“对象”触发的行为描述,“事件”是预先 定义的动作,由用户或者系统激活。常见的“事件”往往 是一些鼠标动作,如“单击”、“双击”、“拖放”或修 改文本框对象的数据等 目录 4方法( Method) 上页 方法是与对象相关的过程,是指对象为完成一定功能 而编写的一段代码。当作用在对象上的某一个设定“事件” 发生时,与该事件相联系的“方法程序”(当然假设对象 下页 的设计者已经设计了该程序并与对象一起封装)就运行并 完成该程序的功能。 出5事件代码与方法代码 事件代码与方法代码都是定义在某个对象中的一个程 序过程,一个对象包含的事件代码是一定的,不能增加 而一个对象中所包含的方法代码是可以任意增加的
目录 上页 下页 退出 5 3.事件(Event) “事件”是“对象”触发的行为描述,“事件”是预先 定义的动作,由用户或者系统激活。常见的“事件”往往 是一些鼠标动作,如“单击” 、 “双击” 、 “拖放”或修 改文本框对象的数据等。 4.方法(Method) 方法是与对象相关的过程,是指对象为完成一定功能 而编写的一段代码。当作用在对象上的某一个设定“事件” 发生时,与该事件相联系的“方法程序”(当然假设对象 的设计者已经设计了该程序并与对象一起封装)就运行并 完成该程序的功能。 5.事件代码与方法代码 事件代码与方法代码都是定义在某个对象中的一个程 序过程,一个对象包含的事件代码是一定的,不能增加, 而一个对象中所包含的方法代码是可以任意增加的
6类( Class) 类”是具有相同属性特征和行为规则的多个“对象” 的一种统一描述。“类”是一个数据模式和若干个程序 目录过程经封装而形成的一个整体,它是对现实世界的一和 模拟与抽象,而“对象”则是“类”的一个具体实例。 上页7子类与继承 在面向对象的方法里,继承是指在基于现有的类创 下页建新类时,新类继承了现有类里的方法和属性。此外 可以为新类添加新的方法和属性。我们把新类称为现有 退出 类的子类,而把现有类称为新类的父类。一个子类的 成员一般包括: (1)从其父类继承的属性和方法 (2)由子类自己定义的属性和方法
目录 上页 下页 退出 6 6.类(Class) “类”是具有相同属性特征和行为规则的多个“对象” 的一种统一描述。 “类”是一个数据模式和若干个程序 过程经封装而形成的一个整体,它是对现实世界的一种 模拟与抽象,而“对象”则是“类”的一个具体实例。 7.子类与继承 在面向对象的方法里,继承是指在基于现有的类创 建新类时,新类继承了现有类里的方法和属性。此外, 可以为新类添加新的方法和属性。我们把新类称为现有 类的子类,而把现有类称为新类的父类。 一个子类的 成员一般包括: (1)从其父类继承的属性和方法。 (2)由子类自己定义的属性和方法
8. Visual Foxpro基类 是系统本身内含的,并不 存放在某个类库中。用户可以基于基类生成所需 目录要的对象,也可以扩展基类创建自己的子类 在程序设计中,可以使用 CREATEOBJECT函数 上页来直接生成基于某个类的对象。该函数的格式如 下 下页 CREATEOBJECT(1,, ]) 退出 函数基于指定的类生成一个对象,并返回对象 的引用。 9. Visual FoxPro基类列表 7
目录 上页 下页 退出 7 8. Visual FoxPro基类 Visual FoxPro基类是系统本身内含的,并不 存放在某个类库中。用户可以基于基类生成所需 要的对象,也可以扩展基类创建自己的子类 在程序设计中,可以使用CREATEOBJECT函数 来直接生成基于某个类的对象。该函数的格式如 下: CREATEOBJECT([,,,…]) 函数基于指定的类生成一个对象,并返回对象 的引用。 9. Visual FoxPro基类列表
类名 含义 类名 含义 Active Doc 活动文档 标签 CheckBox 复选框 Line 线条 Column (表格)列 Listbox 列表框 ComboBox 组合框 Decontrol OLF容器控件 目录 CommandButton 命令按钮 Oleboundcontrol OLH绑定控件 Commandor 命令按钮组 OptionButton 选项按钮 上页 Container 容器 Optiongroup 选项按钮组 Contorl 控件 下页 Custom 定制 Page Frame 页框 EditBox 编辑框 ProjectHook 项目挂钩 orm 表单 Separator 分隔符 退出 FormsEt 表单集 图形 表格 Spinner 微调控件 Header (列)标头 TextBox 文本框 Hyper Link 超级链接 Timer 定时器 图象 ToolBar 工具栏
目录 上页 下页 退出 8 类名 含义 类名 含义 ActiveDoc 活动文档 Label 标签 CheckBox 复选框 Line 线条 Column (表格)列 Listbox 列表框 ComboBox 组合框 Olecontrol OLE容器控件 CommandButton 命令按钮 Oleboundcontrol OLE绑定控件 CommandGroup 命令按钮组 OptionButton 选项按钮 Container 容器 Optiongroup 选项按钮组 Contorl 控件 Page 页 Custom 定制 PageFrame 页框 EditBox 编辑框 ProjectHook 项目挂钩 Form 表单 Separator 分隔符 FormSet 表单集 Shape 图形 Grid 表格 Spinner 微调控件 Header (列)标头 TextBox 文本框 HyperLink 超级链接 Timer 定时器 Image 图象 ToolBar 工具栏 类名 含义 类名 含义 ActiveDoc 活动文档 Label 标签 CheckBox 复选框 Line 线条 Column (表格)列 Listbox 列表框 ComboBox 组合框 Olecontrol OLE容器控件 CommandButton 命令按钮 Oleboundcontrol OLE绑定控件 CommandGroup 命令按钮组 OptionButton 选项按钮 Container 容器 Optiongroup 选项按钮组 Contorl 控件 Page 页 Custom 定制 PageFrame 页框 EditBox 编辑框 ProjectHook 项目挂钩 Form 表单 Separator 分隔符 FormSet 表单集 Shape 图形 Grid 表格 Spinner 微调控件 Header (列)标头 TextBox 文本框 HyperLink 超级链接 Timer 定时器 Image 图象 ToolBar 工具栏 类名 含义 类名 含义 ActiveDoc 活动文档 Label 标签 CheckBox 复选框 Line 线条 Column (表格)列 Listbox 列表框 ComboBox 组合框 Olecontrol OLE容器控件 CommandButton 命令按钮 Oleboundcontrol OLE绑定控件 CommandGroup 命令按钮组 OptionButton 选项按钮 Container 容器 Optiongroup 选项按钮组 Contorl 控件 Page 页 Custom 定制 PageFrame 页框 EditBox 编辑框 ProjectHook 项目挂钩 Form 表单 Separator 分隔符 FormSet 表单集 Shape 图形 Grid 表格 Spinner 微调控件 Header (列)标头 TextBox 文本框 HyperLink 超级链接 Timer 定时器 Image 图象 ToolBar 工具栏
面向对象程序设计的基本 1.封装性 对象的封装性,就是指将对象的方法程序和属性代 目录 码包装在一起。封装是借助类来实现的。 2.继承性 上页 从一种现有的、普遍的类派生出的一种新的、具体 的类型的方法。现有的、普遍的的类叫做父类,也称基 下页 类。新的、具体的类被称作子类,也被称作派生类。子 类继承父类的属性或方法。一个子类可以拥有其父类的 全部功能,并可在此基础上,添加其他功能 退出 3.多态性 所谓多态性实际上就是在运行时方法与对象的动态 绑定。多态性使得用户可以将所定义的方法应用于多个 对象,并使得程序更加容易扩充
目录 上页 下页 退出 9 二、面向对象程序设计的基本特征 1.封装性 对象的封装性,就是指将对象的方法程序和属性代 码包装在一起。封装是借助类来实现的。 2.继承性 从一种现有的、普遍的类派生出的一种新的、具体 的类型的方法。现有的、普遍的的类叫做父类,也称基 类。新的、具体的类被称作子类,也被称作派生类。子 类继承父类的属性或方法。一个子类可以拥有其父类的 全部功能,并可在此基础上,添加其他功能。 3.多态性 所谓多态性实际上就是在运行时方法与对象的动态 绑定。多态性使得用户可以将所定义的方法应用于多个 对象,并使得程序更加容易扩充
第二节 Visual foxpro6.0中的类与对象 、 Visual Foxpro6.0的类 目录 各种窗口、菜单栏、单选按钮、复选框等在面向 对象的设计中都称之“对象”。 Visual Foxpro6.0对这 些常用的对象提供了丰富的基本类(基类)供用户直接 上页使用。根据实际需要对它们进行相应的改造以形成“子 类”或者直接形成“对象”,以提高开发者的工作效率 下页二、容器与控件 Visual Foxpro60的基类共分为两个大类:容器类 退出 和非容器类。 1.容器类 容器类可以包含其他对象,并且允许访问这些对象 表8-1列出了每种容器类所能包含的对象
目录 上页 下页 退出 10 第二节 Visual FoxPro 6.0中的类与对象 一、Visual FoxPro 6.0的类 各种窗口、菜单栏、单选按钮、复选框等在面向 对象的设计中都称之“对象” 。Visual FoxPro 6.0对这 些常用的对象提供了丰富的基本类(基类)供用户直接 使用。根据实际需要对它们进行相应的改造以形成“子 类”或者直接形成“对象”,以提高开发者的工作效率。 二、容器与控件 Visual FoxPro 6.0的基类共分为两个大类:容器类 和非容器类。 1.容器类 容器类可以包含其他对象,并且允许访问这些对象。 表8-1列出了每种容器类所能包含的对象