小男孩儿 2019-11-19
类图(Class diagram)主要用于描述系统的结构化设计。类图也是最常用的UML图,用类图可以显示出类、接口以及它们之间的静态结构和关系。

| 符号 | 解释 |
|---|---|
| + | public |
| - | private |
| # | protected |
| ~ | default |
| 下面有横线 | 表示static静态属性 |
| 符号 | 解释 |
|---|---|
| +-#~ | 同上 |
| 斜体 | 抽象方法 |
| 下面有横线 | 表示static静态方法 |
| :String | :后表示返回值,返回String字符串类型 |
| 无: | 表示void无返回 |


/**
* 动物类
*/
public class Animal {
/**
* 生命
*/
public String life;
/**
* 新陈代谢
* @param oxygen 氧气
* @param water 水
*/
public void metabolism(Oxygen oxygen, Water water) {
}
public void multiply () {
}
}/**
* 水
*/
public class Water {}
/**
* 氧气
*/
public class Oxygen {}
public class Animal {
/**
* 生命
*/
public String life;
/**
* 新陈代谢
* @param oxygen 氧气
* @param water 水
*/
public void metabolism(Oxygen oxygen, Water water) {
}
public void multiply () {
}
}/**
* 鸟
*/
public class Bird extends Animal {
/**
* 羽毛
*/
public String plume;
/**
* 两个翅膀
*/
public List<Wing> wings;
/**
* 生蛋
*/
public void rawEgg () {
}
}
/**
* 鸟
*/
public class Bird extends Animal {
/**
* 羽毛
*/
public String plume;
/**
* 两个翅膀
*/
public List<Wing> wings;
/**
* 生蛋
*/
public void rawEgg () {
}
}/**
* 翅膀
*/
public class Wing {}关联关系分为单向关联和双向关联:

/**
* 企鹅
*/
public class Penguin extends Bird {
//气候
public Climate climate;
public Climate getClimate() {
return climate;
}
public void setClimate(Climate climate) {
this.climate = climate;
}
}/**
* 气候
*/
public class Climate {}
/**
* 大雁群
*/
public class BigWildGooseGroup {
public List<BigWildGoose> bigWildGooses;
public void oneFly() {
System.out.println("一字飞行");
}
public void vfly() {
System.out.println("V字飞行");
}
public List<BigWildGoose> getBigWildGooses() {
return bigWildGooses;
}
public void setBigWildGooses(List<BigWildGoose> bigWildGooses) {
this.bigWildGooses = bigWildGooses;
}
}/**
* 大雁
*/
public class BigWildGoose extends Bird implements IFly{
@Override
public void fly() {}
}
/**
* 大雁
*/
public class BigWildGoose extends Bird implements IFly{
@Override
public void fly() {}
}/**
* 飞行接口
*/
public interface IFly {
void fly();
}
慕课网设计模式精讲: https://coding.imooc.com/class/270.html大话设计模式: https://book.douban.com/subject/2334288/设计模式之 UML 类图: https://zhuanlan.zhihu.com/p/24576502UML学习(二)-----类图: https://www.cnblogs.com/silent2012/archive/2011/09/07/2169946.html