03-classes_objects

03-classes_objects

ID:34543492

大小:338.28 KB

页数:57页

时间:2019-03-07

03-classes_objects_第1页
03-classes_objects_第2页
03-classes_objects_第3页
03-classes_objects_第4页
03-classes_objects_第5页
资源描述:

《03-classes_objects》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、类与对象面向对象程序设计基础111主要内容面向对象的程序设计C++的类与对象类的定义成员构造函数析构函数222面向对象的程序设计333面向过程与面向对象面向对象程序设计(OOP)ObjectOrientedProgramming目前一种主流程序设计方法C++是混合编程语言C++保持与C相兼容既支持面向对象程序设计方法,也支持面向过程程序设计方法,是一种混合编程语言。444面向过程程序设计方法机制首先定义所要实现的功能然后为这些功能设计所必要的步骤或过程解决问题的重点是如何实现过程的细节数据与操作这些数据的过程分离围绕功

2、能(过程或操作)实现来设计程序采用自顶向下(瀑布式的流程),功能分解法采用逐步求精的方法来组织程序的结构程序组成形式——主模块+子模块它们之间以数据作为连接纽带程序=算法+数据结构数据处于次要的地位,而过程是关心的重点555面向过程程序设计方法缺点:数据与操作这些数据的过程分离,一旦问题改变(数据结构发生变化),就需要重新修改问题的解决方法(操作数据的过程)软件维护成本高不利于代码重用(re-use)以函数(功能、过程)的方式实现代码重用,效率低理想的方式:问题的解决方案能够重用不适于中大型、巨型软件程序设计666面向对象程序设

3、计面向对象概念是一种解决问题的方法或观点认为自然界是由一组彼此相关联并相互作用(通信)的实体所组成,称为对象(Object)对象化的表示更接近于对世界的自然描述程序员使用面向对象的观点来分析问题将所要解决的问题转化为程序中的对象——任何问题在程序中都被映射为对象找出问题的属性(数据描述)与操作方法(通过函数来体现)然后用计算机语言来描述问题,最后在计算机中加以处理777以“人”为例:每一个“人”的个体都是“人类”的一个实例(对象)每一个“人”有自己的属性姓名、年龄、职业、...个体之间存在着各种关系个体之间能够相互作用(操作):

4、交谈、合作、...888面向对象程序设计程序设计程序员在解决问题时应具有高度的概括、抽象能力根据自然实体(待解决的问题)的属性进行分类和抽象准确描述实体类的属性和行为对问题进行分析和抽象,使用程序设计语言中的类和类之间的关系来描述待解决的问题及其相关性对类进行具体化,产生出对应的问题对象,以消息传递的机制来组织对象之间的相互作用和操作程序组成形式:对象+消息对象与对象之间通过消息作为连接相互驱动对象的行为(操作)体现为对消息的处理方式对象(问题)之间的关系是编程关心的重点,而对象功能实现细节则处于次要的地位,并且通常被封装999面向对

5、象程序设计面向对象程序设计的优越性提高软件质量:实现数据与方法的封装,通过方法来操作改变数据,提高了数据访问的安全性易于软件维护支持软件重用,大大提高软件生产的效率实现可重用的软件组件,实现软件设计的产业化由于程序是类的集合从而可以根据问题的相关性来组装程序而面向过程程序设计则是函数的集合,零散不便于代码重用101010总结:面向过程与面向对象面向过程的程序设计Program=Algorithms+DataStructures问题求解的方法:向过程传递数据面向对象的程序设计问题求解的方法:向对象发送消息面向过程的程序设计语言与面

6、向对象的程序设计语言Modula-2、Ada支持数据隐藏和数据封装C++、Java支持数据隐藏和数据封装支持继承和多态、支持重用111111OOP基本手段——抽象对具体问题(对象)进行分类概括,提取出这一类对象的共同性质并且加以描述的过程。编程的要求:先注意问题的本质及描述,其次是实现过程或细节。它直接决定程序的优劣——类的定义及组成元素;所涉及到的主要内容:数据抽象(属性)——描述某类对象的属性或状态(对象相互区别的物理量);行为抽象(方法)——描述某类对象的共有的行为特征或具有的功能。抽象的实现:在C++中通过类class来声

7、明121212OOP基本手段——抽象例:对现实中钟表类的抽象属性抽象:所有钟表都具有以下属性intHour;intMinute;intSecond;行为(操作)抽象:钟表对外(其他对象)体现的行为SetTime(intHour,intMinute,intSecond);ShowTime();注:钟表内部的如何保证准确的时间是钟表内部实现的细节,使用钟表功能的外部对象并不关心这些细节在OOP中,这些细节也是次要的131313OOP基本手段——抽象例:对人的抽象得到“人类”属性抽象char*name;intage;intid;...行为的抽象:

8、Eat();Speak();Work();...141414OOP基本手段——封

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
相关文章
更多
相关标签