本文已参与「新人创作礼」活动, 一起开启掘金创作之路。
UML是一种统一建模语言
UML中的类图和时序图是比较重要的,开发中经常能看见。
图上一共有三层,第一层代表的是类,第二层是属性和字段,第三层是行为和方法
+表示public,-表示private, #表示protected,~代表默认,带横线的就是静态的(static)。
这是一个比较完整的类图,注意上面walk方法是斜体说明方法是抽象方法,有了抽象方法,这个类也必须是抽象类,
所以类也是斜体。
对于属性:后面是属性的类型 对于方法:后面的是返回值
代码实现
/**
* Person
*
* @author yang
* @date 2021/12/31
*/
public abstract class Person {
public String name;
private int age;
protected double weight;
double height;
public static char sex;
public static void run(){}
private void study(){}
protected void eat(String food){}
void sleep(){}
public abstract void walk();
}
说明:图引用大话设计模式
依赖关系:通常是作用在方法上 关联关系:把关联的东西做为自己的属性
依赖关系与关联关系的区别
- 依赖关系是用虚线而关联关系是用实线
- 依赖关系他们之间的关系更弱(只有在需要的时候才会调用方法),关联关系他们之间的关系更强(直接注入了属性)
聚合关系:整体和局部,很多大雁组成大雁群 组合关系:整体和局部,一只鸟有两双翅膀
聚合关系与组合关系的区别
- 聚合用的是空心,组合用的是实心
- 聚合关系比组合关系生命周期不一样,组合更强,聚合跟弱。
大雁死了大雁群依然存在。鸟死了,翅膀自然就没用了。
继承类用的是实线和空心箭头 继承接口有两种方式
- 虚线和空心箭头
- 实线和圆,很像一个棒棒糖