设计模式UML类图基础
1.聚合
聚合(aggregation)表示一种弱的“拥有”关系,体现的是A对象可以包含B对象,但是B对象不是A对象的一部分。如大雁是群居动物,每只大雁都属于一个雁群,一个雁群可以有多只大雁,这便是一种聚合关系。
class WideGooseAggregate{ private WideGoose[] arrayWideGoose;//在雁群WideGoosegrate类中,有大雁数组对象arraryWideGose }
2.合成
合成(Composition)是一种强拥有的关系,体现了严格的部分和整体的关系,部分和整体的生命周期是一样,如鸟和翅膀就是组合的关系,因为他们是部分和整体的关系,并且翅膀和鸟的生命周期是相同的。
class Bird { private Wing wing; public Bird() { wing = new Wing();//在鸟Bird类中,初始化时,实例化翅膀Wing,他们之间同时生成 } }
3.关联
当一个类“知道”另一个类时,可以用关联(association),用实线箭头表示。如企鹅与气候关联,企鹅需要“知道”气候的变化,需要了解气候规律。
class Penguin:Bird { private Climate climate;//在企鹅Penguin中,引用到气候Climate对象 }
4.依赖关系
依赖关系(Dependency)用虚线箭头来表示。动物几大特征,比如有新陈代谢,能繁殖。而动物要有生命力需要氧气、水以及食物等,也就是说动物依赖于氧气和水。
abstract class Animal { public Metabolism(Oxygen oxygen,Water water) { } }
5.接口
6.继承
从各处转载java文件