- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
? 在 C++ 中,就是用类来描述对象的,类是对现实世界的抽 象得到的。例如,在真实世界中,同是人类的张三和李四, 有许多共同点,但肯定也有许多不同点。当用 C++ 描述时, 相同类的对象具有相同的属性和行为,它把对象分为两个部 分:数据(相当于属性)和对数据的操作(相当于行为)。 我们刻画张三和李四的数据可能用姓名、性别、年龄、职业 、住址等,而对数据的操作可能是读或设置它们他们的名字 、年龄等。 ? 从程序设计的观点来说,类就是数据类型,是用户定义的 数据类型。这种类型的使用虽然与 C++ 内置的数据类型类似 ,但是也有很大的区别。例如, C++ 内置的浮点类型并不针 对任何具体问题,仅仅与机器的存储单元相对应,而类是用 户根据具体问题的需要而定义的,也就是说,类与具体问题 相适应。我们可以通过定义所需要的类,来扩展程序设计语 言解决问题的能力。 三、面向对象软件的重要特性 ? 抽象性( abstraction ) ? 封装性( encapsulation ) ? 继承性( inheritance ) ? 多态性( polymorphism ) 1 抽象性( abstraction ) ? 抽象是对具体对象(问题)进行概括,抽出这一 类对象的公共性质并加以描述的过程。 ? 先注意问题的本质及描述,其次是实现过程或细节。 ? 数据抽象:描述某类对象的属性或状态(对象相互区 别的物理量)。 ? 代码抽象:描述某类对象的共有的行为特征或具有的 功能。 ? 抽象的实现:通过类的声明。 1 抽象性( abstraction )实例-钟表 ? 数据抽象: int Hour,int Minute,int Second ? 代码抽象: SetTime(),ShowTime() class Clock { public: void SetTime(int NewH,int NewM,int NewS); void ShowTime(); private: int Hour,Minute,Second; }; 1 抽象性( abstraction )实例-人 ? 数据抽象: ? char *name,char *gender,int age,int id ? 代码抽象: ? 生物属性角度: ? GetCloth(), Eat(), Step(),… ? 社会属性角度: ? Work(), Promote() ,… 面向对象 C++ 程序设计 徐 建 南京理工大学计算机学院 主要内容 ? 面向对象程序设计概述 ? 类和对象 ? 构造函数与析构函数 ? 继承和派生类 ? 类的其他特性 ? 运算符重载 ? 输入输出流 课时安排 ? 理论学习 40 学时+上机实验 8 学时 ? 课外上机实验 8 学时 面向对象程序设计概述 ? 面向对象和面向对象程序设计 ? 面向对象程序设计的基本概念 ? 面向对象软件的重要特性 一、面向对象和面向对象程序设计 ? 什麽是面向对象 ? 对象 ( object ) – 任何可以被感觉到的事物。 ? 面向 ( oriented ) – 直接面对,以对象为中心。 ? 面向对象 ( Object Oriented ) – 直接面对你能 感觉到的任何事物。 ? 面向对象编程 ( Object Oriented Programming ) – 直接面对软件所要模拟的客 观世界中的事物,将它们直接映射到软件系统 的解空间中,成为组成软件的对象。 面向对象 VS. 面向过程程序设计 ? 面向过程程序设计 设 计 程 序 步 骤 : ? 根 据 实 际 问 题 的 要 求 和 对 其 进 数据声明 数据处理 结果输出 例如,一个学校管理软件中可以包含如下的数据结构和操作: typedef struct student typedef struct teacher { { char name[10]; char name[10]; long num; double salary; int age; int age; char sex; char sex; } student ; } teacher ; void enroll ( student * ptr) void raise ( teacher * ptr) { { ... … ptr-num++; ptr-salary += 100; } } void print (student* ptr) void print (teacher* ptr) { { ... … } } main() { ... student Zhang; // 定义学生数据模块 teacher Li; // 定义教师数据模块 enrol
您可能关注的文档
最近下载
- 成人创伤性颅脑损伤院前与急诊诊治中国专家共识解读PPT课件.pptx VIP
- 酒店绿云科技快捷版说明书.docx
- 医案记录精选.docx
- 2025年高考英语全国一卷听力试题真题及答案(含MP3+原文).pdf VIP
- 基于机器学习的疾病预测模型.pptx VIP
- 2015护士资格证考试《专业实务》真题及答案.doc VIP
- 第23课 全民族浴血奋战与抗日战争的胜利 课件(共28张PPT) 2024-2025学年统编版高中历史(必修)中外历史纲要(上).pptx VIP
- 护士资格证专业实务练习题(带答案).docx
- 领导力培训Leadership.ppt VIP
- 2025湘美版美术八年级上册第二单元第1课《图像的魅力》课件.pptx
原创力文档


文档评论(0)