第四章 类与对象 C++程序设计 计算机等级考试教学课件.ppt

第四章 类与对象 C++程序设计 计算机等级考试教学课件.ppt

  1. 1、本文档共139页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章类与对象C程序设计计算机等级考试教学课件

第四章 类与对象 主讲人:XXX 电子邮件: 联系电话: 类与对象 本章重点 C++中的类 对象的概念 构造函数 析构函数 回顾:面向过程的设计方法 重点: 如何实现细节过程,将数据与函数分开。 形式: 主模块+若干个子模块(main()+子函数)。 模块是按功能来分的,所以也称功能块。在C++中称为一个函数,一个函数解决一个问题,即实现一个功能或一个操作。 回顾:面向过程的设计方法 特点: 自顶向下,逐步求精——功能分解。 缺点: 效率低,程序的可重用性差。 面向过程程序设计缺点的根源在于数据与数据处理分离。 面向对象的方法 目的: 实现软件设计的产业化。 观点: 自然界是由实体(对象)所组成。 程序设计方法: 使用面向对象的观点来描述模仿并处理现实问题。面向对象技术中的对象就是现实世界中某个具体的物理实体在计算机逻辑中的映射和体现。 要求: 高度概括、分类、和抽象。 现实世界与计算机世界的映射关系 对象 对象的示例 消息传递 类 类和对象的示例 属性 事物的特性在类中表示为变量 每个对象的每个属性都拥有其特有的值 属性名称由类的所有实例共享 方法 方法的示例 类和对象的区别 抽象 数据抽象 抽取出关键数据 抽取出属性和方法 数据抽象的示例 封装 信息隐藏,隐藏对象的实现细节,不让用户看到 将东西包装在一起,然后以新的完整形式呈现出来 例如,两种或多种化学药品组成一个胶囊 将方法和属性一起包装到一个单元中,单元以类的形式实现 封装的示例 3-1 封装的示例 3-2 封装的示例 3-3 继承与派生 是C++中支持层次分类的一种机制,允许程序员在保持原有类特性的基础上,进行更具体的说明。 多态性 多态:同一名称,不同的功能实现方式。 目的:达到行为标识统一,减少程序中标识符的个数。 结构化程序与面向对象程序的比较 问题:输入圆的半径,求圆的周长和面积 数据描述: 半径,周长,面积均用实型数表示 数据处理: 输入半径 r; 计算周长 = 2*π*r ; 计算面积 = π* r2 ; 输出半径,周长,面积; 方法一:用结构化方法编程,求圆的周长和面积 #includeiostream using namespace std; void main () { double r, girth, area ; const double PI = 3.1415 ; cout Please input radius:\n ; cin r ; girth = 2 * PI * r ; area = PI * r * r ; cout radius = r endl ; cout girth = girth endl ; cout area = area endl ; } 方法二:用面向对象方法编程,求圆的周长和面积 方法二:用面向对象方法编程,求圆的周长和面积 方法二:用面向对象方法编程,求圆的周长和面积 #includeiostream using namespace std; class Circle { double radius ; public : void Set_Radius( double r ) { radius = r ; } double Get_Radius() { return radius ; } double Get_Girth() { return 2 * 3.14 * radius ; } double Get_Area() { return 3.14 * radius * radius ; } } ; void main() { Circle A, B ; A.Set_Radius( 6.23 ) ; cout A.Radius = A.Get_Radius() endl ; cout A.Girth = A.Get_Girth() endl ; cout A.Area = A.Get_Area() endl ; B.Set_Radius( 10.5 ) ; cout B.radius = B.Get_Radius() endl ; cout B.Girth= B.Get_Girth() endl ; cout B.Area = B.Get_Area() endl ; } 类与对象的基本概念 C++类的定义 C++类的定义 C++类的定义 C++类的定义 C++类的定义

您可能关注的文档

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档