uml       

UML

属性名

可见性 名称:类型 [ = 默认值 ]

在Java类中可见性分为三类,分别是private,public 和protected,在类图中分别用符号-、+和#表示

操作方法

可见性 名称(参数列表) [ : 返回类型]

类之间的关系

类与类之间由弱到强关系是: 没关系 > 依赖 > 关联 > 聚合 > 组合

在UML类图中类与类之间存在多种关系,如泛化(Generalization)关系,实现(Realization)关系,依赖(Dependence)关系,关联(Association)关系,聚合(Aggregation)关系, 组合(Composition)关系

泛化(Generalization)继承关系

泛化关系也就是Java中的继承,类和类,接口和接口都可以是继承关系,父类又称作基类或超类,子类又称作派生类,类继承父类后可以实现父类的所有功能,并能拥有父类没有的功能。在UML中,泛化关系可以用带空心三角形的直线来表示

实现(Realization)关系

实现关系在java中就是一个类和接口之间的关系

在UML中实现接口用虚线和带空心的三角形表示

依赖(Dependence)关系

依赖关系是类与类之间最弱的关系,依赖可以简单的理解一个类使用了另一个类

在UML中一栏用带箭头的虚线表示依赖

成员函数参数或实现

关联(Association)关系

关联关系表示一个类和另一类有联系

关联关系是一种包含关系,在UML中用一个带箭头的实线表示,箭头指向被包含类

1..1 表示另一个类的一个对象只与该类的一个对象有关系
 
0..* 表示另一个类的一个对象与该类的零个或多个对象有关系
 
1..* 表示另一个类的一个对象与该类的一个或多个对象有关系
 
0..1 表示另一个类的一个对象没有或只与该类的一个对象有关系
 
* 任意多个对象关联

成员变量

聚合(Aggregation)关系

聚合关系是表示整体与部分的关系,但是部分可以脱离整体而存在

在UML类中聚合关系用带空心菱形的直线表示。

public  class GooseGroup
{
	public Goose goose;

	public GooseGroup(Goose goose)
	{
		this.goose = goose;
	}
}
大雁脱离雁群独立存在

构造函数参数

组合(Composition)关系

组合关系也是一种部分和整体的关系,但是部分存活周期受到整体的影响,若整体不存在则部分也将不存在。此时部分需在整体的构造方法中创建。在UML类中,组合关系用带实心菱形的直线表示。

public class Goose
{
	public Wings wings;
 
 	public Goose()
	{
		wings=new Wings();
	}
}
大雁构造函数里生成翅膀,即生命周期和大雁一样

翅膀脱离大雁不能生存

构造函数里

总结

聚合和组合是关联的特列

http://blog.jobbole.com/108568/