属性的表示方式为:【可见性】【属性名称】:【类型】={缺省值,可选}
方法的表示方式为:【可见性】【方法名称】(【参数列表】):【类型】
"-"表示private、"+"表示public、"#"表示protected。
1、继承关系
抽象继承关系也是继承关系中的一种
泛化关系也就是继承关系用带空心三角形的实线来表示
在UML中,抽象类无论类名还是抽象方法名,都以斜体的方式表示
2、实现关系
使用带空心三角形的虚线来表示
一个类实现一个接口,这个就是实现关系
3、关联关系
关联(Assocition)关系-结构化关系,表示一类对象与另一类对象之间有联系。它侧重于两者之间的联系
用单箭头实线连接有关联关系的对象所对应的类
类型:单向关联关系、双向关联关系、自关联
在Java中通常将一个类的对象作为另一个类的成员变量
4、聚合关系
聚合(Aggregation)关系表示整体与部分的关系。
聚合关系用带空心菱形的直线表示
成员对象是整体的一部分,但是成员对象可以脱离整体对象独立存在。
成员对象通常以构造方法、Setter方法的方式注入到整体对象之中。
5、组合关系
组合(Composition)关系也表示的是一种整体和部分的关系
在组合关系中整体对象可以控制成员对象的生命周期,一旦整体对象不存在,成员对象也不存在,整体对象和成员对象之间具有同生共死的关系。
组合关系用带实心菱形的直线表示
通常在整体类的构造方法中直接实例化成员类
6、依赖关系
依赖(Dependency)关系是一种使用关系,特定事物的改变有可能会影响到使用该事物的其他事物
在需要表示一个事物使用另一个事物时使用依赖关系,大多数情况下依赖关系体现在某个类的方法使用另一个类的对象作为参数
依赖关系用带箭头的虚线表示,由依赖的一方指向被依赖的一方。
依赖关系通常通过三种方式来实现:
将一个类的对象作为另一个类中方法的参数
在一个类的方法中将另一个类的对象作为其对象的局部变量
在一个类的方法中调用另一个类的静态方法
关联关系、聚合关系、组合关系的区别
关联和聚合:关联的两个对象之间一般是平等的,聚合则一般是不平等的。
聚合和组合::组合的两个对象之间生命周期有很大的关联,被组合的对象在组合对象创建的同时或者创建之后创建,在组合对象销毁之前销毁,一般来说被组合对象不能脱离组合对象独立存在,而且也只能属于一个组合对象;聚合则不一样,被聚合的对象可以属于多个聚合对象。
参考:https://www.cnblogs.com/liyanwei/p/2c7358fa7b2cd3d75779523cdbb5b31c.html
网友评论