UML类之间的关系

UML类之间的关系

名称

说明

UML

 

 

 

 

关联关系

是一种结构化关系,通常将一个类的对象作为另一个类的属性,如:老师和学生、丈夫和妻子。

包括双向关联、单向关联、自关联和多重性关联。

public class LoginForm{

  private JButton loginButton;

}

public class JButton{

}

聚合关系

表示一个整体与部分的关系,是关联关系的一种。成员对象是整体对象的一部分,但是成员对象可以独立存在。例如:计算机与鼠标。

通过一个空心菱形加箭头表示。

public class PersonGroup {  

    public Person person;  

    public PersonGroup(Person person) {   

        this.person = person;  

    }  

}  

public class Person {  

    public Person() {  

      }  

}  

组合关系

表示类之间整体和部分的关系,是关联关系的一种成员类的存在依赖于整体类。例如:人的头和嘴巴。

通过一个实心的菱形加箭头表示。

public class Head{

    private Mouth mouth;  

public Head()

{

   mouth = new Mouth();

}

}

public class Mouth{

}

依赖关系

是一种使用关系,即表示一个事物使用另一个事物。体现为某个类的方法使用另一类的对象作为参数。例如:驾驶员开车。

通过带箭头的虚线表示,由依赖的一方指向被依赖的一方。

public class Driver{

public void drive(Car car){

  Car.move();

}

}

public class Car{

Public void move(){

}

}

泛化关系

即继承关系。用于描述父类与子类之间的关系。例如:植物和树。

通过带空心三角形的直线来表示。


 public class Person{

protected String name;

Protected int age;

public void move(){

}

Public void say(){

}

}

Public class Student extends Person{

private String studentNo;

public void study(){

}

}

Public class Teacher extends Person{

private String teacherNo;

public void teach(){

}

}

实现关系

是一种类与接口的关系,表示类实现了接口,类中的操作实现了接口中所声明的操作。

通过带空心三角形的虚线来表示。

 public interface Vehicle{

public void move();

}

Public class Ship implements Vehicle{

public void move(){

}

}

Public class Car implements Vehicle{

public void move(){

}

}

原文地址:https://www.cnblogs.com/znjy/p/15342415.html