- 1、本文档共139页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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++类的定义
您可能关注的文档
- 第十章广告经营理念 广告管理 教学课件.ppt
- 第十章报表Visual FoxPro VFP计算机等级考试教学课件.ppt
- 第十章氨基酸代谢 生物化学 教学课件.ppt
- 第十章常用窗体控件 Visual Basic.NET程序设计教程(第2版) 教学课件.ppt
- 第十章立体几何(必修2)训练 AB考总复习人教A版数学(文)配教案.doc
- 第十章稿件的配置 编辑学 教案.doc
- 第十章资产评估操作程序 资产评估 教学课件.ppt
- 第十章金融工程 投资银行 教学课件.ppt
- 第十章市场失灵 西方经济学.ppt
- 第十章:抗战时期的大众媒体 中国新闻史 教学课件.ppt
- 2025年西林县古障镇人民政府招聘村级财务会计委托代理服务中心考前自测高频考点模拟试题及答案详解(有.docx
- 2025年广东广州市天河第一小学编外聘用制专任教师招聘笔试备考题库含答案详解.docx
- 2025年上半年核心制度培训考核试卷含答案.docx
- 2024年江西吉安职业技术学院及下辖中职学校招聘29人笔试模拟试题附答案详解.docx
- 2025年四川内江市东兴区招募特聘动物防疫专员12人笔试模拟试题带答案详解.docx
- 2025年湖南湘江新区面向社会招聘中学优秀教师(50人)笔试备考试题含答案详解(名师推荐).docx
- 2025年广东广州市天河第一小学编外聘用制专任教师招聘笔试备考题库及参考答案详解.docx
- 2024年陕西安康市汉阴县事业单位招聘高层次人才10人笔试高频难、易错点备考题库及参考答案详解.docx
- 2025年衢州市柯城区教育局下属事业单位选调笔试高频难、易错点备考题库及参考答案详解.docx
- 2025年广东广州市天河第一小学编外聘用制专任教师招聘笔试备考题库及参考答案详解1套.docx
文档评论(0)