设计模式--UML关系与代码对照
来源:互联网 发布:兰博基尼苹果壁纸软件 编辑:程序博客网 时间:2024/05/19 11:50
在学习UML的时候,重点掌握UML的九种图和六种关系,以及他们衍生出来的作品。在机房收费系统完成后,通过UML的理论知识的学习之后,实践了一把。用UML对系统进行建模之后,我们需要把UML图转换成具体的代码,用代码去实现我们的模型。每种关系在代码中的表示方法是怎样的,同样我们反过来,看了代码之后,我们能够对应着找到类与类之间的关系。
继承:指的是一个类(称为子类、子接口)继承另外的一个类(称为父类、父接口)的功能,并可以增加它自己的新功能的能力。
代码
class Bird : Animal {//成员; }
实现:指的是一个class类实现interface接口(可以是多个)的功能。
接口的表示方法
1.直接画棒棒糖形状的。
2.把一个类的形式设置为Interface然后选中这个interface, Format->Stereotype display->Lable
代码
<span style="font-size:24px;"> class Bird :IFlay,IWalk//接口的多继承; { }</span>
关联(Association):当一个类知道另一个类时用关联
代码
<span style="font-size:24px;"> class Penguin : Bird { private Climate climate; //企鹅继承鸟类,引用到了Climate对象 }</span>
依赖(Dependency):一个类A使用到了类B,类B的变化会影响到类A。
代码
<span style="font-size:24px;"> abstract class Animal <span style="white-space:pre"></span>{ public Metabolism(Oxygen oxygen,Water water) {//Water和Oxygen类作为Animal类的某个方法的参数或返回值; }}</span>
组合(Composition):一种强“拥有”关系,体现了严格的部分和整体关系,部分和整体的生命周期一样。
代码
<span style="font-size:24px;">class Bird { private Wing wing; public Bird() { wing =new Wing(); //构造函数,初始化鸟类时,实例化Wing;生命周期相同 }}</span>
聚合(Aggregation):一种弱“拥有”关系,体现了A对象可以包含B对象,但B对象不是A对象的一部分。B可以脱离A单独存在。生命周期不同
代码
<span style="font-size:24px;"> class WideGooseAggregate { private WideGoose[] arrayWideGoose;//雁群中有大雁数组; }</span>
每一种设计模式,都是用UML图给出,这些模式的UML图,就是类与类关系的各种组合,熟悉了基础,更加有利于后面对代码的理解。看到代码想到相应的UML图,掌握每一种模式的UML图的重点所在,从小入手,各个击破。
- 设计模式--UML关系与代码对照
- 【设计模式系列】之《UML五种关系与代码的对应关系》
- 设计模式------------UML关系
- UML图示与代码对照
- 大话设计模式阅读(1) UML类图各种关系与代码的对应理解
- 设计模式奠基石——UML关系转化为代码
- 设计模式基础---UML关系的代码实现
- 【大话设计模式】UML关系在代码中的表现形式
- 设计模式与需求分析与UML建模的关系
- 【设计模式】1.UML类图关系与时序图
- 【UML】设计模式与UML
- java中类与类关系,UML类图关系,设计模式
- 【设计模式】UML关系图示例
- 软件工程 ,UML ,设计模式 简单关系
- 类关系(UML&设计模式)
- 设计模式中类的关系 UML
- 设计模式中类的关系UML
- 类关系(UML&设计模式)
- 是你没看到是而非
- ORACLE PL/SQL编程之八:把触发器说透
- C语言新手一枚前来报到~~
- [leetcode] 130 surrounded regions dfs bfs
- Java多线程---Lock类
- 设计模式--UML关系与代码对照
- 考试终于结束了
- JQuery中的事件
- 删除链表中的重复节点、剩余节点逆序输出
- 黑马程序员——C语言——结构体与枚举
- 关于Android设备屏幕大小及密度的系统参数类
- [C++]LeetCode: 84 Generate Parentheses (卡特兰数)
- CentOS上安装Oracle XE指南
- android webView参数