- 0
- 0
- 约1.53万字
- 约 62页
- 2017-07-17 发布于四川
- 举报
第13章 面向对象的程序设计 第13章 面向对象的程序设计 面向对象程序设计(OOP,Object-Oriented Programming)是目前主流程序设计方法,它取代了传统的结构化程序设计技术,代表着程序设计的发展方向。 13.1 面向对象程序设计概述 面向对象程序设计方法是由结构化程序设计方法发展而来的,它摆脱了结构化程序设计中需要对过程进行全面设计的方法(不但要告诉计算机“做什么”还要告诉计算机“怎么做”)。将所涉及的一切实体全部当作一个“对象”来看待,并且将这些对象分别归属到不同的“类”中。在程序杓剖通过更改对象的属性、触发对象的事件和调用对象的方法,控制程序的执行进程。而且在VB中使用的大多数对象都是系统以“控件类”的形式定义好的,程序员在使用时只需将其从工具箱中添加到窗体上(创建控件类的实例)即可。对于一些特殊的问题,程序员还可以创建自定义类或ActiveX控件。 13.1.1 对象和类 对象(Object)是代码和数据的集合,就像现实生活中的一个实体。如一只气球是一个对象,一台电脑也是一个对象。 在VB环境下,常用的对象有各种控件、窗体、菜单、应用程序的部件以及数据库等。这些对象都具有属性(数据)和行为方式(方法)。简单地说,属性用于描述对象的一组特征,方法为对象实施一些动作,对象的动作常常需要触发事件,而触发事件又可以修改属性。一个对象建立以后,其操作可通过与该对象有关的属性、事件和方法来描述。 “属性”、“方法”和“事件”是对象的基本元素。在VB程序设计过程中,可以通过这三个基本元素来操纵和控制对象。 面向对象程序设计主要是建立在类和对象的基础之上。通常的面向对象程序设计中的类都是由程序员自己开发的。而在VB中,类可以是系统设计好的,也可以由程序员根据需要自行设计。 在VB中,工具箱上的可视类图标是系统设计好的标准控件类,此外还可以在“工程”菜单中执行“部件”命令,加入大量的Active X控件。通过将这些类实例化,可以得到真正的控件对象。当程序员在窗体上“画”出一个控件时,就自动将其转化为对象了。 除了通过控件类产生控件对象外,VB还提供了许多系统对象,如打印机(Printer)、剪贴板(Clipboard)、屏幕(Screen)、应用程序(App)等。 窗体是一个特例,它既是类,也是一个对象。当向一个工程添加一个新窗体时,实质就由窗体类创建了一个窗体对象。窗体是控件对象的容器,也是应用程序的界面。 13.1.2 类的继承性 继承性指的是一个新类可以从现有的类中派生出来,新类具有父类中所有的特性,直接继承了父类的方法和数据,新类的对象可以调用该类及父类的成员变量和成员函数。继承是从一种对象类型构造另一种对象类型的一个主要方法。利用继承性,可以在已经定义的对象类型基础上创建更复杂、更专业的对象类型,只要加进所需属性和方法,将新对象与上级对象区别开来即可。 13.1.3 类的封装性 任何程序都包含两个部分:代码和数据。在结构化程序设计模式中,数据在内存中进行分配,并由子程序和函数代码处理;而在OOP模式中是将处理数据的代码、数据的声明和存储封装在一起。一个对象中的数据和代码相对于程序的其余部分是不可见的,它能防止那些非期望的交互和非法的访问。 封装就是将对象的属性和方法封装到具有适当定义接口的容器中。对象接口提供的方法和属性应使对象能够如期使用。 封装是一种信息隐蔽技术,用户只能见到对象封装界面上的信息,对象内部对用户是隐蔽的。封装的目的在于将对象的使用者和设计者分开,使用者不必知道行为实现的细节,只需用设计者提供的消息来访问该对象即可。 13.1.4 类的多态性 所谓多态是指一个名字可具有多种语义,多态引用表示可引用多个类的实例。多态可为一种对象类定义一种方法的多种实现方案,这些方法是通过类型和可接受的参数来区分的。 多态性有时也指方法的重载。方法的重载是指同一个方法名在上下文中有不同的含义,是该类以统一的方式处理不同数据类型的一种手段。 从对象接收消息后的处理方式看,多态性指的是同一个消息被不同的对象接收时解释为不同意义的能力。也就是说,同样的消息被不同的类对象接收时,产生完全不同的行为。利用多态性,用户能发送一般形式的消息,而将其所有实现的细节留给接收消息的对象去解决。 13.2 VB中预定义的类和对象 VB中有各种对象,包括窗体、控件、屏幕、打印机等。这些对象是由VB系统提供的,称为“预定义对象”。它们由系统建立,用户可以直接使用但不能修改。 13.2.1 通过控件类创建对象 VB中绝大多数预定义类都以控件的形式存放在控件工具箱中,称为“
您可能关注的文档
- 第12课新潮冲击下的生活生活.ppt
- 第12课新潮冲击下的社会生活.ppt
- 第12课新潮冲击夏的社会生活.ppt
- 第12课新潮冲击下的社会生活2.ppt
- 第12课时变异与育种zl.ppt
- 第12课时大洋洲与澳大利亚.ppt
- 第12课欣欣向荣的科教文体事业课件.ppt
- 第12课明清时期的反侵略斗争(川教版).ppt
- 第12课汉武帝巩固大一统王朝.pptx
- 第12课法国大革命.ppt
- 小区绿化施工协议书.docx
- 墙面施工协议书.docx
- 1 古诗二首(课件)--2025-2026学年统编版语文二年级下册.pptx
- (2026春新版)部编版八年级道德与法治下册《3.1《公民基本权利》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《4.3《依法履行义务》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.2《按劳分配为主体、多种分配方式并存》PPT课件.pptx
- (2026春新版)部编版八年级道德与法治下册《6.1《公有制为主体、多种所有制经济共同发展》PPT课件.pptx
- 初三教学管理交流发言稿.docx
- 小学生课外阅读总结.docx
- 餐饮门店夜经济运营的社会责任报告(夜间贡献)撰写流程试题库及答案.doc
最近下载
- ISO9001-2026质量管理体系标准版中英文及变化点解析.pdf VIP
- HGT 21629-1999 管架标准图(四).docx VIP
- 广州市民办学校申办审批表.doc VIP
- 无人机测绘技术与应用课件21--无人机驾驶员职业规划.ppt
- 2025年袋鼠数学LevelB试卷及答案.pdf VIP
- 《重症凝血病标准化评估中国专家共识(2025)》解读PPT课件.pptx VIP
- 《动物防疫法》培训解读课件.pptx VIP
- 无人机测绘技术与应用课件20--无人机飞行原理.ppt
- 先进控制技术及其应用.docx VIP
- 2025-2026学年济南版(2024)初中生物八年级上册《血液是物质运输的载体》教学设计.docx
原创力文档

文档评论(0)