【UML学习】

引用文章

继承、实现:

https://www.cnblogs.com/xrq730/p/5527115.html

关联、聚合、组合、依赖: 

https://www.cnblogs.com/xrq730/p/5533019.html

继承

继承也叫作泛化(Generalization),用于描述父子类之间的关系,父类又称为基类或者超类,子类又称作派生类。在UML中,泛化关系用带空心三角形的实线来表示。

public abstract class Person {
    
   void operation(String param);
}

public class Student extends Person {
    
    private String name;

    public void operation(String param){
    }
}

public class Teacher extends Person {
    
    private String name;

    public void operation(String param){
    }
}

 PlantUML

@startuml

title Generalization

class Person
class Student
class Teacher

Person <|-- Student
Person <|-- Teacher

@enduml

实现

public interface Animal {
    
   void eat();
}

public class Dog implements Animal {
    
    private String name;

    public void eat(){
    }
}

public class Cat implements Animal {
    
    private String name;

    public void eat(){
    }
}

PlantUML

@startuml
title Realization

interface Animal
class Dog
class Cat

Animal <|.. Dog
Animal <|.. Cat
@enduml

聚合

表示整体由部分组成,但是整体和部分不是强依赖的,整体不存在了部分还是会存在。

@startuml
title Aggregation

class Computer
class Keyboard
class Mouse
class Screen

Computer o-- Keyboard
Computer o-- Mouse
Computer o-- Screen
@enduml

组合

@startuml
title Composition

class Company
class DepartmentA
class DepartmentB

Company *-- DepartmentA
Company *-- DepartmentB
@enduml

关联

@startuml
title Association

class School
class Student

School "1" - "n" Student
@enduml

依赖

@startuml
title Dependency

class Vehicle {
    move(MoveBehavior)
}

interface MoveBehavior {
    move()
}

note "MoveBehavior.move()" as N

Vehicle ..> MoveBehavior

Vehicle .. N
@enduml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值