chapter02面向对象基本概念课件.ppt

chapter02面向对象基本概念课件.ppt

ID:57055811

大小:520.00 KB

页数:38页

时间:2020-07-30

chapter02面向对象基本概念课件.ppt_第1页
chapter02面向对象基本概念课件.ppt_第2页
chapter02面向对象基本概念课件.ppt_第3页
chapter02面向对象基本概念课件.ppt_第4页
chapter02面向对象基本概念课件.ppt_第5页
资源描述:

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

1、第2章面向对象基本概念面向对象的基本概念软件工程学家Coad和Yourdon:面向对象=对象+类+继承+通信面向对象的基本观点客观世界由对象组成,任何客观实体都是对象,复杂对象可以由简单对象组成。具有相同数据和操作的对象可归纳成类,对象是类的一个实例。类可以派生出子类,子类除了继承父类的全部特性外还可以有自己的特性。对象之间的联系通过消息传递来维系。面向对象的基本概念面向对象的核心要素:对象封装消息类抽象继承多态性1)对象-无处不在客观世界里的任何实体都可以被称为对象。对象可以是具体的、有形的物,也可以是无形的事物或概念。对象是问题域或实现域中某些事物的一个抽象。对象是一

2、个封装数据属性和操作行为的实体。系统中的对象在软件生命周期的各个阶段可能有不同的表示形式。对象具有良好定义的封装了状态和行为边界的具体实体,类的实例。对象具有状态、行为和标识。类似对象的结构和行为在它们的共同类里定义。术语“实例”和“对象”是可以互换的。对象代表了一个单独的、可确认的物体、单元或实体,它可以是具体的也可以是抽象的,它在问题领域里有确切定义的角色。一个对象的实例图解2)封装(encapsulation)封装是面向对象方法的一个重要原则。封装有两个含义:结合性信息隐蔽性封装(encapsulation)封装:当一个对象执行自己的操作时,它对外界隐藏了操作的细节

3、。封装(encapsulation)封装意味着对象对其他对象和外部世界隐藏了自己要做什么。对象通常也要给外部世界提供一个“接口”,用来初始化这些操作。例如:电视机上一般都设有一组按钮或者提供带有按钮的遥控器。洗衣机也提供了一组按键,让你能设置它的温度和水位。电视机和洗衣机的按键都称为接口。就是把对象的属性和方法结合成一个独立的系统单位,并尽可能地隐蔽对象的内部细节。封装使对象形成两个部分:接口部分和实现部分。封装提供了两种保护。首先保护对象,防止用户直接存取对象的内部细节;其次封装也保护了客户端,防止对象实现部分的变化可能产生的副作用,即实现部分的改变影响到客户端的改变。

4、封装(encapsulation)3)消息(message)消息就是向对象发出的服务请求。它包含了提供服务的对象标识、服务(方法)标识、输入信息和回答信息等。面向对象方法的一个原则就是通过消息进行对象间的通信。消息与函数调用的区别是:消息包含同步消息和异步消息,如果消息是异步的,则一个对象发送消息后,就继续自己的活动,不等待消息接收者返回控制;函数调用是同步的,消息发送者要等待接收者返回。消息(message)例:遥控器与电视机对象之间的协作是通过相互发送消息,一个对象发送一个操作消息给另一个对象,接收消息的对象就执行这个操作。4)类(class)类是一组具有相同数据结构

5、和相同操作的对象的集合。它为属于该类的全部对象提供了统一的抽象描述。类:对象的抽象。客观世界实际存在的都是对象,而不是类。类和对象的关系。对象:类的实例。例如:Person属性:身高、体重、年龄行为:吃饭、睡觉、读书、写字、说话、工作等类是静态的,类的语义和类之间的关系在程序执行前就已经定义好了,而对象是动态的,对象是在程序执行时被创建和删除的。找出正确的分类方法是成功的oo分析的关键之一。类(class)类(class)抽取系统中的基本特性而忽略非基本的特性,以便更充分地注意与当前目标有关的方面。过滤掉对象的一部分特性和操作,直到只剩下你所需要的属性和操作。5)抽象(a

6、bstraction)抽象表示一个对象与其他对象相区别的基本特征,因此提供同观察者角度有关的清晰定义的概念界限。为给定域指定正确的抽象集合是面向对象设计的核心问题。抽象来自于对真实世界中特定对象、情况或过程之间的相似性的认识,并决定专注于这些相似性而忽略存在差异的时刻。抽象的种类实体抽象一个对象,用来表示问题域或解决方案领域中实体的有用模型行动抽象一个对象,提供一组泛化的操作,其中所有操作都执行同类功能虚拟机器抽象一个对象,将全部由某个高层控制使用的操作组合在一起,或是将全部使用某个低层操作集合的操作组合在一起重合抽象一个对象,将互不关联的一组操作打包抽象和封装是两个互补

7、的概念。抽象注重着重于对象的可观察行为封装着重于引起这种行为的实现封装&抽象6)继承(inheritance)继承性是面向对象程序设计语言不同于其他语言的最主要特点。继承是指子类可以自动拥有父类的全部属性与操作的机制。父类(超类)子类(派生类)继承性又分为单重继承和多重继承两类。继承的描述单重继承和多重继承的描述树图子类只从一个父类继承。单继承(singleinheritance)子类从多于一个父类继承。多重继承(multipleinheritance)命名冲突问题JAVA解决方案继承继承具有传递性继承简化了对现实世界的描述继

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

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

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