美文网首页
UML类图中关系的表示方式

UML类图中关系的表示方式

作者: 醉杀楚天白 | 来源:发表于2018-05-02 17:00 被阅读0次
类之间的五种关系.png

1. 依赖关系(Dependency)

单向,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类,是一种“use a”关系

如果A依赖于B,则B表现为A的局部变量,方法参数,静态方法调用等

person类依赖于card类

public class Person {  
    public void doSomething(){  
        Card card = new Card();//局部变量  
        ....  
    }  
}  
public class Person {  
    public void doSomething(Card card){//方法参数  
        ....  
    }  
} 
public class Person {  
    public void doSomething(){  
        int id = Card.getId();//静态方法调用  
        ...  
    }  
} 

2. 关联关系(Association)

单向或双向(通常我们需要避免使用双向关联关系),是一种"has a"关系,如果A单向关联B,则可以说A has a B,通常表现为全局变量

public class Person {  
    public Phone phone;  
      
    public void setPhone(Phone phone){        
        this.phone = phone;  
    }  
      
    public Phone getPhone(){          
        return phone;  
    }  
} 

3. 聚合关系(Aggregation)

单向,关联关系的一种,与关联关系之间的区别是语义上的,关联的两个对象通常是平等的,聚合则一般不平等,有一种整体和局部的感觉,实现上区别不大

Class由Student组成,其生命周期不同,整体不存在了,部分依然存在,当前Team解散了,人还在,还可以加入别的组

public class Team {  
    public Person person;  
      
    public Team(Person person){  
        this.person = person;  
    }  
}  

4. 组合关系(Composition)

单向,是一种强依赖的特殊聚合关系

Head,Body,Arm和Leg组合成People,其生命周期相同,如果整体不存在了,部分也将消亡

public class Person {  
    public Head head;  
    public Body body;  
    public Arm arm;  
    public Leg leg;  
      
    public Person(){  
        head = new Head();  
        body = new Body();  
        arm = new Arm();  
        leg = new Leg();  
    }  
}  

5. 继承关系(Inheritance)


类实现接口,类继承抽象类,类继承父类都属于这种关系

可以分得更细:

实现(Realization):类实现接口属于这种关系
泛化(Generalization):即"is a"关系,类继承抽象类,类继承父类都属于这种关系

相关文章

  • UML类图中关系的表示方式

    1. 依赖关系(Dependency) 单向,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类,是...

  • UML类图

    类图中关系(relation) 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实...

  • 常见UML类图

    一、类的属性的表示方式 在UML类图中,类使用包含类名、属性(field) 和方法(method) 且带有分割线的...

  • UML 模型图之:类图、用例图、时序图

    一 UML类图 在UML类图中,常见以下几种关系:泛化(Generalization)、实现(Realizatio...

  • UML类图

    UML类图 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realizat...

  • java中类与类之间的几种关系

    通常我们都会使用UML图来表示类与类之间的关系。在这里介绍基本的UML画法,并用UML图类表示类之间的关系。 UM...

  • UML六大关系

    继承 子类继承父类或者子接口继承父接口,在UML图中用实线空心箭头表示。 实现 类实现接口的功能,在UML图中用虚...

  • UML图(一)

    一、UML类图 在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Reali...

  • UML类图中的关系

    UML中类图之间的关系有六种,依次(关系强弱)为实现(Realization)、泛化(Generalization...

  • 快速读懂UML类图

    经常看到UML类图但还不太熟悉的小伙伴赶紧来一起认识一下它 类的属性的表示方式 在UML类图中,类使用包含类名、属...

网友评论

      本文标题:UML类图中关系的表示方式

      本文链接:https://www.haomeiwen.com/subject/lxpcrftx.html