面向对象程序设计概述课件

上传人:我*** 文档编号:141980462 上传时间:2020-08-14 格式:PPT 页数:45 大小:751.50KB
返回 下载 相关 举报
面向对象程序设计概述课件_第1页
第1页 / 共45页
面向对象程序设计概述课件_第2页
第2页 / 共45页
面向对象程序设计概述课件_第3页
第3页 / 共45页
面向对象程序设计概述课件_第4页
第4页 / 共45页
面向对象程序设计概述课件_第5页
第5页 / 共45页
点击查看更多>>
资源描述

《面向对象程序设计概述课件》由会员分享,可在线阅读,更多相关《面向对象程序设计概述课件(45页珍藏版)》请在金锄头文库上搜索。

1、1,C+面向对象程序设计 任课教师: 张 黎 湖南科技大学计算机学院,2,第1章 面向对象程序设计概述,3,本章主要内容 1.1 面向对象程序设计 1.2 为什么要使用面向对象程序设计 1.3 面向对象程序设计的语言 本章重点 面向对象程序设计的基本概念、特征 本章难点 继承与封装的关系,4,1.1 面向对象程序设计,1.1.1 什么是面向对象程序设计,范型:设计程序的规范、模型与风格,是一类程序设计语言的基础。 分类: 面向过程程序设计范型(C、PASCAL、Ada) 函数式程序设计范型(LISP) 逻辑式程序设计范型(ProLog),5, 新的程序设计范型 面向对象程序设计是一种新型的程序

2、设计范型。这种范型的主要特征是: 程序 = 对象 + 消息 面向对象程序的特点: 1)程序由类的定义和类的使用两部分组成,在主程序中定义各对象之间传递信息的规律 2)程序中的一切操作都是通过向对象发送信息来实现的,对象接到消息后,完成相应的操作,1.对象(object),实体对象 一台计算机 抽象对象 一项计划,什么是对象? 1)用来描述客观事物的一个实体,它是构成系 统的一个基本单元 2)一个对象由一组属性和服务组成,1.1.2 面向对象程序设计的基本概念,6,对象构成要素: (1)对象标识符(对象名) (2)属性 (3)行为,属性: 用来描述对象静态特征的一个数据项。,行为: 用来描述对象

3、动态特征的一个操作。,标识符:对象的名称,用来区别于其他对象。,7,8,例题 1:考虑对象 “学生”,具体描述为:,1)三者为一体; 2)三者有区别,例题 2:对象 “课程” 的有关抽象描述。,注意点: 1. 属性是对对象的静态描述. 2. 行为是对对象的动态描述. 外部是通过调用行为(操作或方法)与对象取得联系的。,9,10,对象的操作可分为两类:一类是自身所承受的操作,一类是施加于其他对象的操作。,面向对象程序设计中对象的特点:,11,2.类( class),具有相同数据和相同操作的一组对象的集合,类与对象的关系 类 对象 抽象定义 实例 例: 模具 由模具压出的工件 学生 张 三 程序设

4、计语言 C+,12,类的分类 抽象类、基类(父类)、派生类(子类)等,基 类 运用抽象原则,舍弃对象的特殊性,提取对象的共同性,得到的一个对象集的类,派生类 在基类的基础上,再考虑在抽象过程中被舍弃的对象的特殊性,而产生的新类,例:若考虑类“学生”,则类“大学生”和“中学生”就是它的派生类。类 “学生”是它们的基类。,13,基类与派生类的关系,派生类具有基类的全部特征。 派生类有自己的特征, 不完全等于 基类。 它们有继承关系,派生类是基类的 子集。,分类的 目的和 意义,对现实世界的实体进行分类 直观地、有层次地表达现实世界,例如,基类“学生”和派生类“大学生”的关系,14,考虑运输工具这个

5、实体,它包含了车辆,车辆又包含机动车和非机动车,机动车又包含轿车和卡车等 如果建一基类“机动车”,则“轿车”和“卡车”就是“机动车”的派生类,而“车辆”可以是基类“机动车”的基类 即:基类可以有基类,派生类可以有派生类。,例题3:,15,车辆类层次图,16,类的表示,例题4:类“课程”的表示,17,类名、属性、行为的命名注意点,标识符(即名字)要达义。 要简明,短小,符合人的思维习惯。 类名宜用名词或动名词。 属性名用名词或动名词。 行为名用动词或动名词。,18,3.消息(message),消息是向对象发出的服务请求,消息的组成 1)对象标志 2)行为标志 3)输入信息 4)输出信息,例题5:

6、“请你把那本书拿给我!” 1)对象标志: 你 2)行为标志: 把那本书拿给我 3)输入信息: 那本书 4)输出信息: 书给我,19,消息的作用,1)提供类之间的动态联系 2)对象通过消息对外提供服务,消息的执行流程,20,对象A: 打印机,对象B: 操作系统,在例题中:,对象标志: 打印机 行为标志: 打印 输入信息: 要打印的文件 输出信息: 打印出资料并结束,分析两个对象 “打印机” 和 “操作系统” 之间的消息通信.,例题6:,4.方法 方法(行为或服务)就是对象所能执行的操作。方法包括界面和方法体两部分。,21,1.1.3 面向对象程序设计的基本特点, 抽象 封装 继承 多态,22,1

7、. 抽象 抽象是对具体对象(问题)进行概括,抽 出这一类对象的公共性质并加以描述的过 程。先注意问题的本质及描述,其次是实 现过程或细节。 数据抽象:描述某类对象的属性或状态(对象相互区别的物理量)。 代码抽象:描述某类对象的共有的行为特征或具有的功能。 抽象通过类的声明来实现。,23,抽象实例人,数据抽象: char *name; char *gender; int age; int id 代码抽象: eat(); getCloth(); live(); step() ,24,25,2.封装(encapsulation),例1: 考虑一个仓库,外部只能通过管理员获 取物品。,26,例2 考虑

8、类“帐户”,其表示如下:,问题的提出,从现实世界的实例表明,类的一些信息需要保护,外界不能随意提取修改,封装就提供这一需求。,27,封装,把对象的属性和行为结合成一个独立的单元,并尽可能隐蔽对象的内部细节。,封装的特点,一个清楚的边界。 所有对象的成分都在这个边界内。 2. 一个或多个接口。 外部通过这些接口访问对象的内部成员。,28,需要更多的输入输出函数。,封装的优点,1. 数据独立 (如每件事物都对应于一对象) 2.具有隐藏性和安全性 (如银行的帐户) 3.易于维护(由于数据独立,易于发现问题),封装的缺点,29,3.继承(inheritance),特殊类具有普通类的所有特性和行为 是类

9、之间的一种关系 是面向对象方法的要点之一,什么是继承 ,继承的特点 ,设 A 为基类, B 为派生类。 1. 共享性: 派生类具有基类所有特征, 即:A B 2. 区别性: 派生类不等于基类,即 AB 3. 层次性: 表示了类之间的关系,30,例3:车辆的继承关系,例4:人类按职业划分的一种继承关系,31,继承的优点:,1. 减少源代码, 即代码可重用。 2. 代码的相互独立性。 3. 易于维护。 4. 体现自然界之间的关系。,32,4.多态性(polymorphism),对相同的消息表现出不同的行为 是面向对象方法的要点之一,例5:几何图形类层次中的多态性。其派生类“圆”、“长方形”、“三角

10、形”等都有行为“求面积”。,33,多态性的作用,派生类继承了基类的属性和行为后,可以有自己的不同于基类的属性和行为。,34,1.2 为什么要使用面向对象程序设计,1.2.1 传统程序设计方法的局限性 (1) 传统程序设计开发软件的生产效率低下 (2) 传统程序设计难以应付日益庞大的信息量和多样的信息类型 (3) 传统的程序设计难以适应各种新环境,35,1.2.2 面向对象程序设计的主要优点,(1) 可提高程序的重用性 (2) 可控制程序的复杂性 (3) 可改善程序的可维护性 (4) 能够更好地支持大型程序设计 (5) 增强了计算机处理信息的范围 (6) 能很好地适应新的硬件环境,36,1.3

11、面向对象程序设计的语言,1.3.1 面向对象程序设计语言的发展概况,Simula (60年代后期) Ada (70年代前期) Smalltalk (72年开始) C (80年由Bell公司Stroustrup 创建) Java (94年由SUN公司创建),37,1.3.2 几种典型的面向对象程序设计语言 1. Smalltalk语言 2. Simula语言 3. C+语言 4. Java语言 5. C#语言,38,1.3.3上机实践上机方法和步骤,编译、调试及运行,其操作步骤如下:,1)启动Visual C+,启动方法见图:,39,2)创建一个新的C+ Source File,l打开“文件”菜

12、单,单击“New”命令选项, 弹出“New”对话框 l单击“New”对话框的“File”页标签,弹出 “File”页; l双击“C+ Source File”选项,进入文件编 辑状态。 该操作过程见图:,40,3)编辑C+ Source File,见图。,41,4)保存C+文件,打开“File”菜单,单击“Save As”命令选项, 在“保存为”对话框中执行存盘操作,见图。,42,5)源程序文件的编译,打开“Build”菜单,单击“Compile”命令选项, 编译结果出现在底部的输出窗中,见图。,43,6)程序修改 如果程序有语法错,可参照“输出窗中给出的提示进行修改,然后重复编译,直至出错提示全部消除。,7)生成可执行文件(程序的链接),打开“Build”菜单,单击“Build(.exe)”命令选项,生成结果出现在底部的输出窗中。如果提示生成成功,则可执行下一个动作;否则,参照出错提示进行修改。,44,8)程序的执行,打开“Build”菜单,单击“Execute(.exe)”命令 选项,弹出程序执行窗口,见图。,程序调试器(Debug),Build页面显示编译器、链接器和其它工具的状态消息 Debug(调试)页面用于通知来自调试器的提示,这些提示对诸如未处理的异常和内存异常之类的情况提出警告 调试方法 快捷键(F5、F9、F10、F11) GOOGLE 搜索 查询资料,45,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号