面向对象程序设计复习提要(不重要).ppt

上传人:zhu****ei 文档编号:5433413 上传时间:2020-01-29 格式:PPT 页数:26 大小:245.50KB
返回 下载 相关 举报
面向对象程序设计复习提要(不重要).ppt_第1页
第1页 / 共26页
面向对象程序设计复习提要(不重要).ppt_第2页
第2页 / 共26页
面向对象程序设计复习提要(不重要).ppt_第3页
第3页 / 共26页
点击查看更多>>
资源描述
C 面向对象程序设计 复习提要 软件学院2013 6 为了超越程序复杂性障碍 克服软件危机 人们提出了面向对象程序设计方法 面向对象程序设计方法一改过去传统的以功能分析和功能分解为基础的面向过程的结构化程序设计方法 它模拟人们理解和处理客观世界的方式来分析问题 把系统视为一系列对象的集合 并用类来抽象地描述各类具有共性的对象 使面向对象的程序可划分成一些类来构成 从而使面向对象的程序设计能比较自然地模拟客观世界的结构和活动 使问题描述空间与解空间在结构上尽可能一致 因此 采用面向对象方法可以更有效地开发大型软件系统 第一部分面向对象程序设计的基本概念 1 2面向对象的基本概念 1 对象 对象是客观实体的抽象表示 是由描述对象的属性数据和对这些数据进行的操作行为两部分组成 对象的特征 具有一个状态 由与其相关联的属性值集合所表征 具有唯一的标识名 可以区别于其他对象 有一组操作方法 每个操作方法决定对象的一种行为 对象的状态一般只能被自身的行为所改变 对象的操作包括自操作 施于自身 和它操作 施于其他对象 对象之间以消息传递的方式进行通信 一个对象的成员仍可以是一个对象 2 类类是具有相同属性和行为的对象集合的抽象描述 类的内部包括属性和行为两个主要部分 3 实例类是对具有相同属性和行为的一组对象的抽象描述 因此 类可作为一种用户自定义类型和创建对象的样板 而按照这种样板所创建的一个个具体对象就是类的实际例子 通常称为实例 4 消息消息就是请求某个对象执行它所包含的某项处理操作的指令信息 实质是对某个类对象的操作函数的调用 即方法的调用 例如 studentS1 S1 display 是一个消息 一个消息一般由三部分组成 接收消息的对象名 操作函数名 函数的参数 5 面向对象技术的三个基本特征封装性继承性多态性 6 封装性封装就是把对象的属性和行为结合成一个独立的单位 使外界不能直接访问或修改这些数据和代码 外界只能通过对象提供的接口函数来改变或获取对象的属性数据 这就实现了消息隐蔽 对象的这种特性称为封装性 7 继承性如果在一个已定义的类上 增加一些特殊属性或操作 可以形成一个新的类 这个类不仅继承了前一个类的全部特征 而且具有新的特性 因此可看作前一个类的特例 是对前一个类的继承 前一个类称为父类 新产生的类叫做子类 通过继承关系可形成一种类层次结构 叫做继承结构 10 多态性定义 在类层次结构的不同类中 可用相同的函数名实现功能不同的操作 思考题题1 试述面向对象程序设计的发展动因 2 面向对象程序设计具有哪些特性 或机制 3 解释下列术语的含义 类对象消息方法继承性多态性封装性 第二部分面向对象程序设计 一 复习内容第2章C 语言基础第3章类与对象的构造设计第4章继承性与派生类第5章多态性与虚函数第6章文件的输入与输出 这部分的程序设计例题必须熟悉 二 复习要点 第2章C 语言基础1 C 程序的一般结构一个C 程序一般可以分成四个部分 预处理指令 全局说明 包括对象类的定义 程序的主函数和用户自定义的子函数 如右图所示 一个C 程序由一个或多个源代码文件构成 C 的源代码文件分为两类 头文件 h 和源程序文件 cpp 第3章类与对象的构造设计3 1 2类和对象的定义方法classclass name private 私有成员privatevariablesandfunction protected 保护成员protectedvariablesandfunction public 公有成员publicvariablesandfunction object list 对象的另一种创建方法class nameobject list 3 1 3成员函数的功能与定义方式成员函数的功能和作用是 用于处理对象内部的数据 实现对象的操作行为 为外部程序提供操作接口 成员函数的定义方式有两种 1 外置方式 2 内置方式 3 1 4类成员访问的原则是 1 定义一个类时 数据成员和成员函数的默认访问权限是私有成员 2 成员函数可直接访问同类中的成员变量和调用同类中的成员函数 不必在函数名前加上对象名 3 私有成员或受保护成员的作用域仅限于类的说明体和类的成员函数 非成员函数应定义为类的友员函数才能访问这个类的私有成员 4 公用成员的作用域不但包括类说明体 还包括它所属对象的使用范围 可以在类外访问公用成员 但必须在成员名前加上对象名 4 1继承机制所谓继承就是允许在一个已有类上 增加一些特殊属性或操作 来派生成新的类 这个派生类不仅可以继承基类成员 而且可以定义新的成员 因此可看作前一个类的特殊类 前一个类称为父类 新产生的类叫做子类 通过继承关系可形成一种类层次结构 叫做继承结构 继承是类之间共享属性与服务的一种机制 继承的一个作用就是代码重用 即从基类派生子类 子类无需修改基类的代码 就可以直接拥有基类的成员 然后增加少量代码就可以实现特殊功能 这就实现了代码的重用 另一个作用是扩充系统 即许派生类在继承父类共性的基础上 增加新的属性和操作来实现特殊功能 class 有三种 公有继承 public 私有继承 private 保护继承 protected 缺省情况下为私有继承 classperson 基类 protected charname 11 charsex intage public char GetName classStudent publicperson private charid 9 floatscore public floatGetScore voidmain 4 2 1派生类的定义 classperson 基类 protected charname 11 intage public person cout person endl person cout deleteperson endl intGetage return20 classStudent publicperson private charid 9 floatscore public student cout student endl student cout deletestudent endl intGetage return30 voidmain person p students p 运行结果 personstudent20deletestudentdeleteperson 第5章多态性与虚函数多态性是指在类层次结构的相同类或不同类中 可用相同的函数名实现功能不同的操作 从而可以使用相同的调用方式来调用这些具有不同功能的同名函数 运行时多态 在类的继承层次结构中 不同层次的类中可能具有同名但实现不同的函数 需要在运行阶段才能根据对象所属的层次来确定调用哪个类中的同名函数 只有将同名函数说明为虚函数 通过对象指针或对象引用来调用虚函数 才能实现运行时多态 例5 2静态联编和动态联编的应用 includeclassStudent public virtualvoidprint cout Astudent endl classGStudent publicStudent public virtualvoidprint cout Agraduatestudent endl voidmain Students1 ps GStudents2 s1 print s2 print s2 Student print ps AstudentAgraduatestudentAstudentAstudentAgraduatestudent 第6章C 的输入与输出流库 C 中负责文件输入 输出的类主要有 ifstream 文件输入流类 ofstream 文件输出流类 fstream 文件输入 输出流类 要使用fstream类执行文件的I O时 必须定义一个fstream类的对象 然后使用该对象调用fstream类提供的成员函数open打开一个文件 open函数的参数有两个 一个表示用户欲打开的磁盘文件的名称 另一个表示打开该文件的模式 例如 fstreamfile file open Myfile txt ios in 可用位或运算符OR 运算符将一些模式参数组合成一个模式参数 file open MyFile txt ios in ios out ios binary 练习题编程实现下列类层次结构 实现运行时多态
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!