- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章C面向对象
本章目标 理解面向对象编程思想 理解继承和多态的概念 掌握类和对象的关系 了解静态变量、静态成员函数的使用 了解继承的实现和使用 了解多态的实现和使用 类与对象 面向对象 面向对象程序设计( OOP,Object-oriented programming)是当前主流的程序设计范型。 计算机程序是由单个能够起到子程序作用的单元或对象组合而成 。 为了实现整体运算,每个对象都能够接收信息、处理数据和向其它对象发送信息。 类与对象 面向对象的概念 类(Class):同种对象的集合与抽象,其实就是一种数据类型 对象(Object):各种抽象或具体的实体、事物 二者关系 类是对象的概化、统称,是对象的模板 对象是类的个体、实例(Instance) 人(类)——张三、李四(对象/实例) 工具箱中的控件(类)——窗体上的控件(对象/实例) 设计图纸(类)——房子(对象/实例) 类与对象 面向对象的概念 OOP编程语言的三个基本特征 封装 继承 多态 类与对象 面向对象的概念 封装 把对象的属性(状态)和方法(行为)结合在一起,尽可能隐藏对象内部细节,形成一个不可分割的独立单位(即对象),对外形成一个边界,只保留有限的对外接口使之与外部发生联系。 作用:数据隐藏特性提升了系统安全性,使软件能够局部化,减少查错和排错的难度,避免错误的交叉感染。 类与对象 面向对象的概念 继承 软件重用的一种形式,它通过吸收现有类的属性和方法,并增加新功能或修改现有功能来构建新类。 作用:不仅节省了程序开发时间,还促进了高质量软件的复用。 类与对象 面向对象的概念 多态 在父类中定义的属性或方法被子类继承之后,可以具有不同的表现行为。 提高了程序的抽象程度和简洁性,最大限度降低了类和程序模块之间的耦合。 类与对象 类的定义——除系统定义的类外,用户可以自定义类,本质上是一种自定义的数据类型 类与对象 类的定义 简单例子 类与对象 类的定义 访问权限 类与对象 类的定义 类中声明的变量,就是属性 类中声明的函数,一般就是成员函数 一般由两个文件来实现 类的定义文件——头文件(.h) 类中成员函数的实现——源文件(.cpp) 成员函数前都有类名加两个冒号(::),表明类的所属关系 思考 思考 类与对象 构造函数与类的实例化 定义类→创建类的对象(即对该类实例化) 实例化类时,如需进行属性的初始化,可通过构造函数完成 类与对象 构造函数 声明格式 思考 思考 思考 类与对象 构造函数 构造函数与一般函数不同点 构造函数名与所属类的名称完全一样 构造函数没有返回值 构造函数可以重载,一旦实例化对象,系统将根据传递参数调用相应构造函数 若类中未定义构造函数,在实例化对象时,系统自动调用默认的构造函数 若类中定义了构造函数,默认的构造函数将不在起作用 类与对象 创建对象的两种方法 栈对象 class_name obj_name; //调用不带参数的构造函数,或者默认的构造函数 class_name obj_name(argu_list);//调用带参数的构造函数 栈对象无需delete调用析构函数释放对象 堆对象 class_name *obj_name=new class_name; class_name *obj_name=new class_name(argu_list) 堆对象需要delete调用析构函数释放对象 类与对象 析构函数 作用与构造函数相反,通常用于释放分配给对象的内存空间 与类同名,但要前缀波浪号“~” 无返回值,无参数,不能重载 一个类中只能有一个析构函数 类与对象 析构函数 声明格式 思考 思考 思考 实验 见实验报告 类继承 继承是面向对象编程的核心技术 运用继承可以创建一个通用类,它定义了一系列相关对象的一般特性,该类可以被更具体的类继承,从而允许通过增加、修改或替换给定类中的方法对类进行扩充,以适应不同的要求。 类继承 基类/父类: 被继承的类 派生类/子类: 继承基类的类 类继承 派生类/子类的定义 类继承 派生类对基类的访问权限 public继承 保持基类成员的访问权限 protected继承 基类的public和protected成员为派生类的protected成员 private继承 基类所有成员在派生类中为private成员 思考 类继承 派生类对象的构造和实例化 派生类继承了基类的成员,所以在实例化派生类对象时,必须调用基类的构造函数 若基类无构造函数,则调用默认的构造函数 若基类同时具有无参数、有参数构造函数,派生类对象实例化时,若不指定,则调用无参数的构造函数 若基类只有有参数构造函数,派生类对象实例化时必须指定哪个有参数构造函数 思考 代码详见Person.doc 类继承 派生类对象的析构 代码详见Person.do
您可能关注的文档
- 项目5-任务1计算平面图形面积.ppt
- ■■■大学_Java程序设计_2010秋A卷.doc
- 胜利学院2012年java考试试题计算机科学.doc
- 上海市java二级2009模拟考题.doc
- Java多线程与细节.doc
- 图的创建、遍历及应用.doc
- 上海交通银行笔试题及答案.docx
- 第四章 函数重载和运算符重载.doc
- 2013年天津大学901计算机考研真题.docx
- C++日常考查范围题目(V2.0版).doc
- 文旅景区·沉浸式演艺综合体文旅商业项目规划方案.docx
- B-S-H年会提案介绍.docx
- 【谷歌】2025一款助力科学家编写专家级实证软件的人工智能系统研究报告.pdf
- 2025年8月电动汽车充换电基础设施运行情况.pdf
- 中国企业赴香港及境外上市融资发展与安全策略白皮书2025.docx
- AI时代下中国低零代码市场发展研究报告(2025).docx
- 文旅景区红叶节旅游文化推广“诗情山水·激情巴中”策划方案.docx
- 投资人力资本,拥抱人工智能 中国未来就业的挑战与应对 背景报告合集.docx
- 中国上市公司ESG管理风险年鉴2024.docx
- 【天翼智库】天翼智库低空经济发展趋势与路径研究报告.pdf
最近下载
- 建筑工程基孔肯雅热疫情应急预案(精选汇编).docx
- 学堂在线网课《生活英语读写》课后作业单元考核答案.docx VIP
- 移动通信管光缆线路工程监理实施细则(含管道建设).doc VIP
- 《前厅服务与管理》《旅游心理学》月考试卷.doc VIP
- BIQS教材-模块介绍.pptx VIP
- T_QGCML 2981—2024(悬浇连续梁临时固结组合体系的抗倾覆能力分析方法).pdf VIP
- 2025年衡阳出租车从业资格证考试题库下载.docx VIP
- 高频精选:海航招飞的面试题目及答案.doc VIP
- 7的乘法口诀公开课教学设计.pdf VIP
- 2024-2025学年人美版(2024)初中美术七年级下册全册(教案含反思).docx VIP
文档评论(0)