《OO技术概论》PPT课件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
10
2.现状:
OOP, OOD 和 OOA成为最重要的软件开发方法 OO在分布计算、数据库、系统软件等领域大显身手 Java 与 UML
3.未来:
OO的形式化与自动化 OO构件的丰富将进一步提高软件开发的效率和质量 软件开发人员必须从 Think Procedurely 转变为
Think Object What & Why §2.2 对象与类 §2.3 消息与方法 §2.4 继承 §2.5 多态
§2.6 OO技术的历史、现状、未来
1
§2.1 OO: What & Why 1.What
对象:现实世界中个体或事物的抽象表示,
是属性和相关操作的封装
属性:对象的性质,属性值规定对象所有可能的状态 操作:对象可以展现的外部服务 类 :某些对象的共同特征(属性和操作)的表示
消息:消息传递是对象与外部世界关联的唯一途径
继承:现实世界中遗传关系的直接模拟,
它表示类之间的内在联系以及对属性和操作的共享
聚集:部分类的对象是整体类对象的组成部分
2
2.Why
顺应人类思维习惯,让软件开发人员在解空间中 直接模拟问题空间中的对象及其行为 改善软件结构(模块化与封装),提高软件灵活性 支持软件重用 支持增量式开发,支持大型软件开发
2.多重继承:
子类可从多个父类继承属性和方法
3.继承机制的意义
避免冗余,简化类或对象之间的接口
支持软件重用
7
§2.5 多态 1.重载(Overloading):
相同的函数名称,属于不同的类 或 由不同的参数类型, 而导致不同的功能或行为
2.重设(Overriding):
子类覆盖父类的方法
8
3.多态(Polymorphism):
3
§2.2 对象与类 1.对象
对象=名字+属性集+方法集+消息集 对象的外部接口=公有属性集+方法集+消息集 对象的状态=对象属性取值的集合 对象接收消息后执行某些方法
4
2.类
类是某些对象共同特征的表示 类是创建对象的模板,对象是类的实例
类描述对象的属性名及类型、对象方法的实现途径 类的所有实例(对象)具有相同的属性名称及类型、
本章小结
面向对象=对象+类+继承+消息+多态 面向对象是提高软件开发的效率和质量的有效手段
12
相同的消息由同一(父)类的不同对象接收时, 导致不同的行为
3.1 编译时多态:
由编译器决定函数名与函数体的联编(Binding)
3.2 运行时多态:
在运行时刻动态决定函数名与函数体的联编
9
§2.6 OO技术的历史、现状、未来 1.历史:
60年代末: Simula 67 80年代初: Smalltalk 80年代中: OOP, OOD 和 OOA 进入软件开发实践 90年代: OOP, OOD 和 OOA 获得广泛应用 C++, Booch方法, OOA/OOD, OOSE, OMT
相同的方法、相同的消息响应方式
5
§2.3 消息与方法
消息传递是对象与外部世界关联的唯一途径
对象接收消息后执行某些方法,以便: 获取对象状态 改变对象状态 完成某项计算或控制功能
为实现的方便与效率计,通常将消息合并至方法中
6
§2.4 继承
1.单重继承:
子类仅从一个父类继承属性和方法 子类可以覆盖父类的部分属性和方法
相关文档
最新文档