设计模式之UML基础

135 阅读2分钟

我在学习设计模式的时候,发现过于抽象。相关例子,都比较简单,在项目中,也无法使用。因此,尝试通过绘制UML图的方式,梳理关系,即能便于对设计模式的理解,又能梳理业务逻辑。希望对大家有所帮助。

类图

类图是UML面向对象中最常用的一种图,类图可以帮助我们更直观了解一个系统的体系结构。通过关系和类表示的类图,可以图形化地描述一个系统的设计部分。

截屏2023-08-01 16.48.45.png

接口

接口是描述类的部分行为的一组操作,接口只负责定义操作,而不负责实现。

截屏2023-08-01 17.07.21.png

抽象类

抽象类是包含一种或多种抽象方法的类,它本身不需要构造实例。定义抽象类后,其他类可以对它进行扩充,并且通过实现抽象方法,使抽象类具象化。

截屏2023-08-01 17.06.57.png

泛化关系

泛化关系是子类继承父类的所有细节。即为继承关系。 我在想为什么泛化就是继承?英文Generalization是广义化、泛化、一般化、概括的意思。而继承是可以使得子类具有父类的属性和方法或者重新定义、追加属性和方法。那父类就是对子类的一个概括,即泛化。

截屏2023-08-01 17.14.58.png

实现关系

实现关系是指一种类与接口之间的关系,表示类是接口所有特征和行为的实现。实际使用中,主要是接口抽象类继承来实现

截屏2023-08-02 10.59.03.png

聚合关系

聚合关系表示整体和部分之间的关系,类与类之间的是强关系。即整体被删除,部分也会被删除。

截屏2023-08-02 11.45.55.png

组合关系

截屏2023-08-02 11.46.17.png

组合关系也表示整体和部分之间的关系,而类与类之间的是弱关系。整体被删除,部分也不会被删除。

关联关系

关联关系表示的是一个对象和另一个对象之间的离散连接。这里和聚合关系、组合关系不同的,它不是表示整体和部分的关系。

截屏2023-08-02 11.46.35.png

依赖关系

依赖关系,表示多个对象之间的关系,对于一个对象的改变,可能会影响会提供消息给另外一个对象。即使用者以某种形式依赖于其他对象。

截屏2023-08-02 11.55.25.png

依赖关系说明关键字
使用包含调用、参数、发送、实例化use
调用call
参数parameter
发送send
实例化instantiate

以上为UML的一些基础知识,便于后续面向对象的分析,以及设计模式学习。