UML类图

作者: 四喜汤圆 | 来源:发表于2018-09-05 20:16 被阅读3次

一、类


类一般由一下几个部分组成:

  • 类名:斜体表示为抽象类,如果是接口的话要加<<interface>>修饰
  • 属性:可见性 名称:类型 [ = 缺省值 ]
  • 方法:可见性 名称(参数列表) [ : 返回类型]
  • 内部类

二、类之间的关系

1. 关联关系

类和类之间最常用的关系,表示一类对象和另一类对象之间有关系。
编程实现时:通常将一个类的对象作为另一个类的成员变量

1)单向关联

public class Customer{
    private Address address;
}

public class Address{
  
}

2)双向关联

public class Customer{
    private Product[] products;
}
public class Product{
    private Customer customer;
}

3)自关联

public class Node{
    Node subNode;
}

4)聚合关系(Aggregation)

聚合关系:表示的是整体与部分的关系,在聚合关系中成员对象是整体对象的一部分,但成员对象可以脱离整体对象独立存在。

在聚合关系实现时:成员对象一般作为构造方法、Setter方法或业务方法的参数注入到整体对象中。

public class Car{
  private Engine engine;
  // 作为构造函数的参数注入
  public Car(Engine engine){
      this.engine=engine;
  }
  // 作为Setter方法的参数注入
  public void setEngine(Engine engine){
      this.engine=engine;
  }
  
}

public class Engine{

}

4)组合关系(Composition)

组合关系:表示整体和部分的关系。在组合关系中整体和部分同生共死(一旦整体对象不存在,成员对象也将不存在)。

我对你实心实意奥

代码实现时:通常在整体类的构造方法中直接实例化成员类。

public class Head{
  private Mouth mouth;
  public Head(){
    // 有你才有我。。啧啧
    this.mouth=new Mouth();
  }
}
public class Mouth{
}

2. 依赖关系(Dependency)

特定事物的改变可能会影响到使用该事务的其他事物。
代码中:在某个类的方法中使用另一个对象作为参数

箭头指向:被依赖的一方

public  class Driver{
  public void drive(Car car){
      car.move();
  }
}

public class Car(){
  public void move(){

  }
}

3. 泛化继承(Generalization)

代码中用extends 实现

箭头指向被继承类

public class Person{
  protected String name;
  proteced int age;
  public void move(){
  }
  public void say(){
  }
}
// 子类
public class Student extends Person {
  private String studentNo;
  public void study(){
  }
}
// 子类
public class Teacher{
  private String teacherNo;
  public void teach(){
  }
}

4. 接口与实现关系

箭头指向被实现类

参考文献

Java葵花宝典_类图

相关文章

  • [一]UML入门

    类图 二 UML类图讲解 三 UML类图讲解-自上而下 四 UML类图讲解-对比讲解

  • JavaScript面向对象之UML类图

    UML类图 什么是UML类图 UML(Unified Modeling Language)类图,中文意思为“统一建...

  • 一张图简述UML类图

    一张图简述UML类图 UML建模常用视图中,类图可算是最多的,初学UML的类图绘制,基于starUML工具,现简记...

  • 设计模式补完计划

    目录 1.uml类图2.uml时序图3.设计模式 uml类图 泛化关系(继承):指类继承自类,接口继承自接口的关系...

  • Java自学-接口与继承 UML图

    UML 图 步骤 1 : UML 图 —— 类之间的关系 UML-Unified Module Language统...

  • SDWebImage源码阅读(一)--基础架构

    SDWebImage架构图 SDWebImage的UML类图,具体UML类图的阅读规则,可以参考这篇文章:UML基...

  • 【JS设计模式3】UML类图

    UML类图 UML类图的画图工具 MS Office visio https://www.processon.co...

  • UML小结

    UML:统一建模语言;常见的UML图有: 类图 类图[https://blog.csdn.net/weixin_4...

  • 设计模式整理—UML图

    UML类图 研究设计模式首先要掌握类图,类图也就是表达模型之前的关系。UML—Unified modeling l...

  • UML总结

    uml概述 uml形式 类图 时序图 类图是展示软件项目中,类与类关系的逻辑图。时序图展示的是软件的方法调用流程。...

网友评论

      本文标题:UML类图

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