面对对象的软件开发方法简介:
面对对象的开发方法把软件系统看成是各种对象的集合,对象就是最小的子系统,一组相关的子对象能够组成更复杂的子系统。
1.1 对象模型:
建立对象模型包括自底向上的抽象过程,也包括自顶向下的分解过程。
(1) 自底向上的抽象。
建立对象模型的第一步是从问题领域入手。
——把问题领域中的事物抽象为具有特定属性和行为的对象。如:动物园中的各种动物对象,可以是小猫,小狗等;
——把具有相同属性和行为的对象抽象为类。各种小猫,小狗可以归为猫类,狗类;
——当多个类之间存在一些共性(具有相同的属性和行为)时,把这些共性抽象到父类中。猫类,狗类又可以归为哺乳类。
(2)自顶向下的分解。
在自底向上的抽象过程中,为了使子类能够更合理的继承父类的属性和行为,可能需要自顶向下的修改。
1.2 UML:可视化建模语言
1.3 Rational Rose:可视化建模工具面对对象开发中的核心思想和概念:
开发者的任务是先建立模拟问题领域的对象模型,然后通过程序代码来实现对象模型。
2.1 对象:对问题领域的事物的抽象。
(1)万物皆对象。
(2)每个对象是唯一 的。在Java虚拟机提供的运行时环境中,保证每个对象唯一性的手段是为他在内存中分配唯一的地址。
(3)对象具有属性和行为。在建立对象模型阶段,仅仅关注对象有什么样的功能,但不考虑如何实现这些功能。对象的属性用成员变量表示,对象的行为用成员方法来表示。
(4)对象具有状态。状态是指某个瞬间对象各个属性的取值。
(5)对象都属于某个类,每个对象都是某个类的实例。
2.2 类:类是一组具有相同属性和行为的对象的抽象。
对象是类的实例,类是对象的模板。
2.3 接口:对象通过接口对外提供服务。
在Java语言中,接口有两种意思:
(1)概念性的接口,即指系统对外提供的所有服务。
(2)指用interface关键字定义的实实在在的接口(接口类型)。
2.4 封装,透明。
封装是指隐藏对象的属性和实现细节,仅仅对外公开接口。
透明在这是指看好不见的意思,所有的东西都被隐藏了当然就看不见了。
2.5 抽象:在面对对象的开发过程抽象体现在如下: