- 1、本文档共16页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C 程序设计教程1
C ++ 面向对象程序设计教程(第二版) 第一章 面向对象程序设计概述 第一章内容 1. 什么是面向对象程序设计 C语言------面向过程的程序设计思想的核心是功能的分解。最终的程序是由过程组成。数据结构和过程的分离,给软件人员造成学生的负担。当数据结构发生变化时,所有与之相关的模块都需要进行修改。因此,面向过程的程序的可重用性差,维护代价高。数据结构被操作。 C++语言------面向对象的程序设计思想的着重点是那些将要被操作的数据,而不是实现这些操作的过程。数据构成了软件分解的基础,而不是功能。最终的程序是由类组成。类接收到消息后主动进行操作。 2. 对象与类 对象------现实世界中,对象是我们认识世界的基本单元,人、事、物。每个对象都拥有一些与其他对象不同的静态属性(人的姓名、性别、年龄等)和动态行为(吃饭、跑步、开车等)。现实世界中,对象=属性+行为。 现实世界中对象的特性(1)每一个对象都有一个名字以区别于其他对象;(2)用属性(或状态)来描述它的某些特征;(3)有一组操作,每个操作决定对象的一种行为;(4)对象的操作可以分为二类:一类是自身所承受的操作,一类是施加于其他对象的操作。 面向对象程序设计中,对象是描述其属性的数据以及对这些数据施加的一组操作封装在一起构成的统一体。对象=数据+操作。 使用对象时,只需要知道它向外界提供的接口形式而不需要知道它的内部是如何实现的。 类------现实世界中,“类”是一组具有共同属性特征和行为特征的对象的抽象。类与对象之间的关系是抽象和具体的关系。类是对多个对象进行综合抽象的结果,对象又是类的个体实物,一个对象是类的一个实例。类在现实世界中并不真正存在。 面向对象程序设计中,“类”是具有相同的数据和相同的操作的一组对象的集合,也就是说,类是对具有相同数据结构和相同操作的一类对象的描述。例如,“教师”类可以由工作证号、姓名、性别、职称等表示其属性的数据项和对这些数据的录入、修改、删除等操作组成。在C++中把类中数据称为数据成员,对数据的各种操作称为成员函数。 在面向对象程序设计中,总是先声明类,再由类生成其对象。类是建立对象的“模板”,按照这个“模板”所建立的一个个具体的对象,就是类的实际例子,通常称为实例。 例:银行帐户管理系统 C语言,面向过程。 Struct account { char name[8];//姓名 unsigned long accoutId;//帐号 float balance;//余额 } Makedeposit(unsigned long Id,float money);//存 Withdraw(unsigned long Id,float money);//取 Transfer(unsigned long SId,unsigned long TId,float money);//转帐 例:银行帐户管理系统 C++语言,面向对象。 class account { Public: Makedeposit(float money);//存 Withdraw(float money);//取 Transfer(unsigned long TId,float money);//转帐 private: char name[8];//姓名 unsigned long accoutId;//帐号 float balance;//余额 } 面向对象程序设计中,“类”只在源程序的代码中出现(即类的定义),并不会在一个正在内存中运行的程序出现,占有硬盘空间;对象作为类的实例在运行的程序中出现,并占有内存空间。一个类实际上是一种新的数据类型,与C语言中的结构体类似。 在面向对象程序设计中,一个对象向另一个对象发出的请求被称为“消息”。当一个对象接收到“消息”后,会去执行一个特殊的方法(成员函数,类似于C语言中的函数),方法定义了一系列的计算步骤。 对象之间的消息传递机制类似于C语言中的过程/函数调用,消息传递并非真的传递消息,它的实质就是方法的调用。 不能把一个面向过程的模块直接变成类,类不是函数的集合,各函数没有公共的成员属性。 3. 数据的抽象与封装 抽象------强调“做什么”,而不是“怎么做”。 现实世界中的抽象与封装:收音机。各个按钮完成
您可能关注的文档
最近下载
- 中国华电集团公司电力安全工作规程(水力机械部分山东审定稿)20121116.doc
- CAAC无人机理论考试题库及答案(2024修订版).docx
- 《通往夏天的隧道 再见的出口》读书笔记思维导图.pptx VIP
- 近五年天津中考英语真题及答案2024.docx VIP
- 附件2:汽车专访.pdf VIP
- 二值的黑白图像(教学设计)-2024-2025学年人教版(2024)小学信息技术四年级全一册.docx VIP
- 小学文言文教学的基本策略.ppt
- 2024年10月自考00908网络营销与策划试题及答案含评分参考.pdf
- 2024年中考模拟试卷语文(北京卷).docx VIP
- 社区全职妈妈赋能项目方案设计.pdf
文档评论(0)