面向对象程序设计第一章概述.ppt

上传人:bao****ty 文档编号:135661155 上传时间:2020-06-17 格式:PPT 页数:33 大小:256KB
返回 下载 相关 举报
面向对象程序设计第一章概述.ppt_第1页
第1页 / 共33页
面向对象程序设计第一章概述.ppt_第2页
第2页 / 共33页
面向对象程序设计第一章概述.ppt_第3页
第3页 / 共33页
面向对象程序设计第一章概述.ppt_第4页
第4页 / 共33页
面向对象程序设计第一章概述.ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

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

1、1 面向对象程序设计 吕华 2 课程安排 主要内容C 编程方法与实践面向对象程序设计基本概念 原理和技术 3 教材 C 面向对象程序设计教程 第3版 陈维兴清华大学出版社参考书 C 程序设计教程钱能清华大学出版社C 程序设计谭浩强清华大学出版社 教材 4 第一章概述 1 1从C到C C语言是贝尔实验室的DennisRitchie在B语言的基础上开发出来的 作为UNIX操作系统的开发语言而开始为人们所共识 C语言是与硬件无关的 语言简洁 紧凑 使用方便 灵活 有丰富的运算符和数据类型 可以直接访问内存地址 生成的目标代码质量高 程序运行效率高 可移植性好 5 第一章概述 C语言的局限 1 C类型

2、检查机制相对较弱 2 C本身几乎没有支持代码重用的语言结构3 程序规模达到一定程度时 程序员很难控制程序的复杂性 1980年贝尔实验室的BjameStroustrup开始对C进行改进和扩充 1983年正式取名为C C 包含了整个C的全部特征 属性和优点 同时添加了对面向独享编程的完全支持 6 第一章概述 1 2面向对象程序设计面向过程的程序设计思想的核心是功能分解并逐步求精 面向过程的程序设计方法中程序的定律是 程序 算法 数据结构 即算法是一个独立的整体 数据结构也是一个独立的整体 两者分开设计 给编程实现造成很大困难 数据结构对应用公开安全性差 7 1 2面向对象程序设计 面向对象程序设计

3、的本质是把数据和处理数据的过程当成一个整体 对象 程序 算法 数据结构 即算法与数据结构是一个整体 算法总是离不开数据结构 含有对数据结构的访问并只能适用于特定的数据结构 8 现实世界本就是一个对象的世界 任何对象都具有一定的属性与操作 也就总能用数据结构与算法两者合一地来描述 这时侯 程序定义变为 对象 算法 数据结构 程序 对象 对象 当我们把现实世界分解为一个个的对象 解决现实世界问题的计算机程序也与此相对应 由一个个对象组成 这些程序就称为面向对象的程序 编写面向对象程序的过程就称为面向对象的程序设计 Object OrientedProgramming 简称为OOP 1 2面向对象程

4、序设计 9 面向对象程序的主要结构特点 一 程序一般由类的定义和类的使用两部分组成 在主程序中定义各对象并规定他们之间传递消息的规律 二 程序中的一切操作都是通过向对象发送消息来实现 对象接收到消息后 启动有关方法完成相应的操作 三 类由继承关系产生相互间的联系 1 2面向对象程序设计 10 面向对象方法是一种运用对象 类 继承 消息传递 封装 多态性等概念来构造系统的软件开发方法 OO Objects Classes Inheritance Communicationwithmessages 1 2面向对象程序设计 11 1 3面向对象的基本概念 1 对象 现实世界中的每个对象都具有一些与其

5、他对象不同的静态的属性和动态的行为 静态的属性又称为对象的状态 例 人的姓名 性别 年龄 身高等 动态的行为又称为对象的操作或功能 例 吃饭 跑步 开车 睡觉等 对象可以认为是 属性 行为 12 1 对象 在面向对象程序中 对象是描述其属性的数据以及对这些数据施加的一组操作封装在一起构成的统一体 对象可以认为是 数据 操作使用对象时 只需知道它向外界提供的接口形式而不需要知道它的内部是如何实现的 1 3面向对象的基本概念 13 2 类 类是对一组具有共同的属性特征和行为特征对象的抽象 对象是特定类所描述的一个具体对象 也称实例 类和对象之间的关系是抽象和具体的关系 类是对多个对象进行综合抽象的

6、结果 对象又是类的个体实物 一个对象是类的一个实例 1 3面向对象的基本概念 14 例如 教师李明是一个对象类名 教师对象名 李明类属性 年龄对象属性 年龄 30学历实例化学历 博士职称职称 副教授专业专业 计算机软件类操作 授课对象操作 讲C语言课判作业判C语言作业吃饭 1 3面向对象的基本概念 15 3 对象的交互 对象与对象之间的交互采用消息传递机制 消息的内容一般应包括接收者的名字 请求的方法 一个或多个参数 消息分为两类 公有消息和私有消息 1 3面向对象的基本概念 16 4 类的确定与划分 类的确定与划分没有统一标准和固定方法 主要考经验和对实际问题的理解 基本原则是对事务进行分类

7、 把具有相同属性和相似行为的对象归为一类 同一事务在不同情况下地位可能不同 有时是类 有时只是某个类的成员属性或函数 一个类中也可以包含其它类的对象 1 3面向对象的基本概念 17 5 继承 继承是子类直接继承父类的数据和操作的机制 子类可以沿用父类的属性和操作 也可以修改和增加新的数据和操作 被继承的类称为基类 父类或超类 继承类称为子类或派生类 1 3面向对象的基本概念 18 继承的作用 一 避免公用代码的重复开发 减少代码和数据冗余二 通过增强一致性来减少模块间的接口和界面继承机制允许派生类继承基类的数据和操作 即数据成员和成员函数 也就是说 允许派生类使用基类的数据和操作 同时派生类还

8、可以增加新的操作和数据 继承具有传递性 1 3面向对象的基本概念 19 继承的分类 继承有两种分类方法 一种是从继承源上分 另一种是从继承内容上分 从继承源上分 继承分为单继承和多继承 单继承 子类只有一个父类 多重继承 子类有两个以上父类 1 3面向对象的基本概念 20 从继承内容上分 可分为 取代继承 子类对父类的所有属性和方法均完全继承 可取代父类 如 徒弟代替师傅包含继承 子类包含了父类的所有属性和方法 在其基础上增加新的属性或方法 受限继承 子类不具有父类的部分属性或方法 如 鸵鸟与鸟特化继承 子类是特殊的父类 需要修改或增加新的属性和方法 如 运动员 1 3面向对象的基本概念 21

9、 6 消息 消息是对象间的交互手段 是一个对象向另一对象发出的请求 即一个对象请求另一对象执行特定的方法 消息内容包括 DestinationObject 接收者名字Operation 请求的方法Parameters 一个或多个参数 1 3面向对象的基本概念 22 7 封装 封装是将对象抽象的外部接口与内部具体的实现细节分离的机制 对象对外只提供其各种操作的接口形式 而不公布其内部私有数据和操作实现算法 使对象使用方便 且具有高安全性和可靠性 1 3面向对象的基本概念 23 8 多态性 多态性指不同的对象收到相同的消息时产生多种不同的行为方式 C 语言支持两种多态性 即编译时的多态性和运行时的

10、多态性 编译时的多态性通过通过重载来实现 运行时的多态性通过虚函数来实现 1 3面向对象的基本概念 24 9 重载 重载一般包括函数重载和运算符重载 指相同的函数名或运算符在不同的参数作用下可以执行不同的行为 ClassA public voidPrint inti 语句段1 voidPrint floatf 语句段2 voidPrint constchar c 语句段3 1 3面向对象的基本概念 25 1 4C 程序开发过程 C 程序的开发过程预编译程序负责处理预编译指令 将程序文件转化为纯粹的C 程序文件 编译程序将一个个C 源程序翻译成对应的二进制目标代码文件 编译程序输出的是一个个后缀

11、名 obj 的文件 连接程序将 obj 文件和库文件连接形成一个完整的可执行程序 26 C 程序的编辑 编译和运行C源程序文件扩展名为 c 而C 源程序文件扩展名为 cpp 在Windows下 我们常用VisualC 开发环境来编辑 编译和运行C 程序 1 4C 程序开发过程 27 C 的程序结构由注释 编译预处理和程序主体组成 注释分为 序言注释和注解性注释 前者用于程序开头 说明程序或文件的名称 用途 编写时间及输入输出说明等 后者用于程序中难懂的地方 每个以符号 开头的行 称为编译预处理行 如 include 称为文件包含预处理命令 每一个C 程序都必须有一个main 函数 作为程序的入

12、口 C 程序中的名字是大小写 敏感 的 1 4C 的程序结构 28 ch1 1 cpp includevoidmain cout Iamastudent n 1 4C 的程序结构 29 1 注释行增设了以 开始的注释 自 开始 一直到本行结束 注释内容为多行时 用 方式或每行注释以 开始 方式的注释不能嵌套 但可以嵌套 方式的注释 例 inti 整型变量i用于循环记数 ThisisamultilinecommentInsideofwhich isnestedasingle linecommentHereistheendofthemultilinecomment 30 2 新的I O流cin是标

13、准的输入流 在程序中用于代表标准输入设备 即键盘 运算符 仍保持了C中的 右移 功能 但用于输入时扩充了其功能 表示将标准输入流 键盘 读取的数值传送给右方指定的变量 例如 cin x 用户从键盘输入的数值会自动地转换为变量x的类型 并存入变量x内 31 cout是标准输出流 在程序中用于代表标准输出设备 通常指屏幕 运算符 在C 中仍保持C中的 左移 操作 但用于输出时扩充了其功能 表示将右方变量的值写到标准输出流cout中 即显示在屏幕上 例如 cout y 将变量y的值显示在屏幕上 y必须是基本数据类型 而不能是void类型 32 使用cin或cout进行I O操作时必须嵌入头文件iostream h 用cin或cout可以一次输入或输出多个数据 C 中新增了换行控制符endl 其作用与 n 相同 cin或cout一般按系统缺省格式输入输出数据 也可对数据格式进行控制 33 1 什么是面向对象程序设计 2 什么是封装 继承性 多态性 3 一个完整的C 程序包含哪几部分 思考

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

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