UML基础知识
在UML类图中,一般由三个部分组成:
- 类名
字段名:即类的成员变量
- ”类型”表示属性的数据类型,可以是基本数据类型,也可以是用户自定义类型
“可见性”表示该属性对于类外的元素而言是否可见,包括公有(public)、私有(private)和受保护(protected)三种,在类图中分别用符号+、-和#表示
“+”表示public方法和字段,可以从类的外部访问这些方法和字段
- “-“表示private方法和字段,无法从类的外部访问这些方法和字段
- “#”表示protected方法和字段,能够访问这些方法和字段的只能是该类自身、该类的子类以及同一包中的类
- “~”表示只有同一包中的类才能访问的方法和字段
方法名
注意:
- abstract类(抽象类)的名字以斜体方式显示
- static字段(静态字段)的名字带有下划线
- abstract方法(抽象方法)的名字以斜体的方式显示
- static方法(静态方法)的名字以下划线显示
继承关系
//ParentClass
public abstract class ParentClass {
int field1;
static char field2;
abstract void methodA();
double methodB(){
return 2f;
}
}
//ChildClass
public class ChildClass extends ParentClass {
void methodA() {...}
static void methodC(){}
}
该图展示了ParentClass和ChildClass两个类之间的关系,其中空心箭头表明了两者之间的层次关系,箭头由子类指向父类,表示的是继承的关系
实现关系
//Printable
public interface Printable {
void print();
void connect();
}
//PrintClass
public class PrintClass implements Printable {
public void print() {}
public void connect() {}
}
聚合关系
class Color{
}
class Fruit{
Color color;
}
class Busket{
Fruit[] fruits;
}
带有空心菱形的实线表示聚合关系,一个类中持有另一个类的实例