面向对象设计思想课件.ppt

面向对象设计思想课件.ppt

ID:57038753

大小:435.50 KB

页数:36页

时间:2020-07-27

面向对象设计思想课件.ppt_第1页
面向对象设计思想课件.ppt_第2页
面向对象设计思想课件.ppt_第3页
面向对象设计思想课件.ppt_第4页
面向对象设计思想课件.ppt_第5页
资源描述:

《面向对象设计思想课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、回顾C++中的数据类型引用类型函数重载函数参数默认值C++中的动态内存分配1本章内容程序设计思想面向对象编程(OOP)面向过程与面向对象的区别OOP的特性类的定义类的访问控制2程序设计方法传统的结构化程序设计SP(StructuredProgramming)面向对象的程序设计OOP(ObjectOrientedProgramming)3结构化程序设计2-1传统的程序设计方法可以归结为“程序=算法+数据结构”,将程序定义为处理数据的一系列过程。这种设计方法的着眼点是面向过程的,特点是数据与程序分离,即数据与数据处理分离。结构化程序设计的基本思想是采用自顶向下、逐步细

2、化的设计方法和单入单出的控制结构。其理念是将大型程序分解成小型、便于管理的任务。如果其中的一项任务仍然过大,则将它分解为更小的任务。这一过程将一直持续下去,直到将程序划分为小型的,易于编写的模块。4结构化程序设计2-2模块22.12.2模块11.21.11.31.3.11.3.21.3.3模块33.13.23.1.13.1.2程序5面向过程方法分析问题结构化程序设计是面向过程(procedure-oriented)的6结构化程序设计的缺点结构化程序设计为处理复杂问题提供了有力手段,但到80年代末,这种设计方法逐渐暴露出以下缺陷:程序难以管理数据修改存在问题难以适应

3、大型软件的设计程序可重用性差面向过程程序设计缺点的根源在于数据与数据处理分离7面向对象程序设计面向对象(ObjectOriented)是认识事务的一种方法,是一种以对象为中心的思维方式面向对象的程序设计:对象=(算法+数据结构)程序=对象+对象+……+对象面向对象程序设计模拟自然界认识和处理事物的方法,将数据和对数据的操作方法放在一起,形成一个相对独立的整体——对象(object),同类对象还可抽象出共性,形成类(class)。一个类中的数据通常只能通过本类提供的方法进行处理,这些方法成为该类与外部的接口。对象之间通过消息(message)进行通讯。面向对象程序设

4、计不像过程性编程那样,试图使问题满足语言的过程性方法,而是试图让语言来满足问题的要求。其理念是设计与问题的本质特性相对应的数据格式。8基本概念——对象世界上所有的事物都可以称为对象(Object)。对象可以是有形的如:一台电视机等。也可以是无形的如:帐户、一项记录等。一个对象就是一个独立存在的客观事物,它由一组属性和对属性进行操作的一组操作构成。属性是对象静态特征的描述操作是对象动态特征的描述属性和操作是对象的两大要素。如电视的属性有:品牌、尺寸、重量等。操作有:收视、选台、音量调节等。9基本概念——类是一个抽象的概念,用来描述某一类对象所共有的、本质的属性和类行

5、为根据抽象的原则对客观事物进行归纳和划分10类和对象的区别如何区分类和对象——以“人”和“张三”为例“人”描述了所有人(包括“张三”)都具有的属性和行为,如有姓名、身高、体重,有鼻子、眼睛、四肢,能交流、有思维等等类(“人”)描述的概念是抽象的“人”的姓名是什么?“人”的身高是什么?对象(“张三”)是具体的“张三”的姓名是“张三”“张三”的身高是185CM类和对象的例子:教室——五楼多媒体教室、四楼语音教室国家——中国、美国学校——福州大学、厦门大学11基本概念——消息对象可以响应消息我们把对象之间产生相互作用所传递的信息称做消息。C++将“向对象发消息”处理成“

6、调用对象的某个成员函数”12面向对象编程方法的特性程序设计的重点在数据而不是函数程序由对象组成,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。对象之间通过相互协作来完成功能大多数对象的定义以数据为中心函数与相关的数据紧密结合数据可以被隐藏很容易扩充新的数据和函数13面向对象编程的优缺点面向对象编程的优点:易维护:可读性高,即使改变需求,由于继承的存在,维护也只是在局部模块,维护起来是非常方便和较低成本的。质量高:可重用现有的,在以前的项目的领域中已被测试过的类使系统满足业务需求并具有较高的质量。效率高:在软件开发时,根据设计

7、的需要对现实世界的事物进行抽象,产生类。这样的方法解决问题,接近于日常生活和自然的思考方式,势必提高软件开发的效率和质量。易扩展:由于继承、封装、多态的特性,自然设计出高内聚、低耦合的系统结构,使得系统更灵活、更容易扩展,而且成本较低。面向对象编程的缺点:运行效率会下降10%左右14面向对象的基本特征抽象封装和数据隐藏继承多态15抽象的设计思路数据抽象化为属性处理过程抽象化为操作(方法)例如:当建立一个图书管理系统时,通过直觉知道系统里一定要有图书管理员/读者/书这些对象,而其中读者的行为含有借书/还书,学生还有其相应的学号/姓名/班级等内容用面向对象方法来认识青

8、蛙青蛙属性

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

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

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