UML是一套符号的规定,这些符号用于描述软件个元素之间的关系,如类之间的关系,依赖,泛化(继承),实现,关联,组合,聚合等。
image.png
- 依赖: 只有在类中用到了对方,那么他们之间就存在依赖关系,如果没有对方 那么编译都不能通过。
public class PersonServiceBean {
private PersonDao personDao;// 类
public void save(Person person) {
}
public IDCard getIDCard(Integer personid) {
return null;
}
public void modify() {
Department department = new Department();
}
}
public class Department {
}
public class IDCard {
}
public class Person {
}
public class PersonDao {
}
其uml图如下:
image.png
- 泛化(继承):泛化关系其实就是继承关系,泛化是依赖的特例之一,如以下继承关系。PersonServiceBean 继承DaoSupport
public abstract class DaoSupport{
public void save(Object entity){
}
public void delete(Object id){
}
}
public class PersonServiceBean extends DaoSupport {
}
image.png
- 实现:实现关系也是依赖关系的特例之一
public interface PersonService {
public void delete(Integer id);
}
public class PersonServiceBean implements PersonService{
@Override
public void delete(Integer id) {
System.out.println("delete..");
}
}
image.png
-
关联:关联关系也是依赖关系的特例之一
image.png -
聚合:聚合关系是关联关系的特例之一,其表示的是整体与部分之间的关系,整体可以和部分分开。如人和身份证的关系。
-
组合:组合关系也是关联关系的特例之一,其表示的是整体与部分之间的关系,整体不可以和部分分开。如 人和头的关系。
public class Person {
private IDCard card; //聚合关系
private Head head = new Head(); //组合关系
}
class IDCard {
}
class Head {
}
image.png
网友评论