idea 看类的子类 uml 图_Java设计模式:认识统一建模语言UML

bdabb37e33a6c0db63f820e45e2bafae.png

共同的事业,共同的斗争,可以使人们产生忍受一切的力量。 ——奥斯特洛夫斯基

引导语

在学习设计模式之前呢,咱们先了解下统计建模语言UML,这样有助于理解后面介绍的设计模式。

统一建模语言(UML)是规约语言,是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。

在UML2.2中定义了14个图示,其中,主要介绍类图、简单介绍行为式图形和时序图。

3a0947a878855578c7634967256f10bf.png

1

概况

结构性图形(Structure diagrams)强调的是系统式的建模。

行为式图形(Behavior diagrams)强调系统模型中触发的事件。

交互性图形(Interaction diagrams),属于行为图形的子集合,强调系统模型中的资料流程。

2

类图

类图一种静态结构图,用于表示类(核心类-属性+方法)、接口、实例等直接互相的静态关系。

一般如图,最上面是类名,中间包含类的属性,底部包含类的方法。

74859b13a585587b3e85334effa59664.png

关系:

26d024122cd23dad5c64ba1535eaa857.png

1.箭头方向:从子类指向父类

2.空心三角箭头:继承(泛化)或实现

3.实线-继承

 实线-关联(通常一个类中有另一个类的对象作为属性)

4.虚线-实现

 虚线-依赖(一个类依赖另一个类实现功能,作为参数、返回值)

5.菱形就是个盛东西的器皿

 空心菱形-聚合:可以放很多相同的东西(箭头方向所指的类);整体和局部的关系,有着独立的生命周期。

81569103e4ab284578e162ba310ef390.png

实心菱形-组合:已经有实体结构的存在;有相同的生命周期。

6.关联(has a)

当一个类作为另一个类某个方法的参数时,为关联。

关联、组成和聚集的差异:

13aab2867296993e7bac2863d82a558d.png

例如,一个大学包含若干个系(如化学系),每个系由若干名教授。如果大学撤销,这些系也就不复存在了,但这些教授仍会继续存在。还需注意,一名教授可以在不同系甚至不同学校兼职,而一个系不能属于两所大学。所以,大学与系之间是组成关系,而系与教授是聚合关系。

7.表示

抽象类用斜体

属性(访问权限+属性+类型)

方法(访问权限+方法+返回值类型)

+:public

-:private

\#:protected

~:default

接口类用<>或者棒棒糖表示。

3

组件图

组件图表示组件是如何互相组织以构建更大的组件或是软件系统的。

组件是封装了可执行特定功能的单位。组件的类型包括了可执行文件、文档、数据库表格、文件和库文件等。

4

活动图

活动图是工作流的图形化表示。

活动图由若干不同形状的图形组成,图形之间由箭头连接。

圆角矩形:表示“动作”;

菱形:表示“决策”;

粗实线:表示并行活动的开始(分离)和结束(汇合);

黑圆:工作流的开始(初始节点);

黑圈套住的黑圆:工作流的结束(结束节点)。

箭头从开始一路指向结束,用来表示活动的先后顺序。

另:

控制流程图、数据流程图、伪代码、状态图。

5

用例图

用例图是用户与系统交互的最简表示形式,展现了用户和与他相关的用例之间的关系。

目的就是为了可以让人在一个更高的层次概览整个系统,用平白的话语让项目参与者理解系统。它可以辅以额外的图表和文档,以更加完整地展现系统的功能和技术细节。

6

时序图

时序图,亦称为循序图/序列图,是一种UML行为图。

它描述了消息在生命线上按照约定顺序执行一种交互行为。它可以表示用例的行为顺序,当执行一个用例行为时,序列图中的每条消息对应了一个类操作或状态机中引起转换的触发事件。


推荐阅读

JVM:Java中的语法糖,你了解多少?

JVM:虚拟机方法调用(理解重载和重写的本质)

JVM:垃圾回收·回收哪些内存

JVM:了解垃圾收集器

JVM:虚拟机运行时栈帧结构

JVM:类加载的全过程

JVM:类加载器·双亲委派模型

直击Redis实战-工作中常见问题

话说:Redis中的事件和Reactor模式

话说:Redis的高可用方案-Redis集群模式


扫码关注更多精彩 baa5d76c753cbe2849b0274b4bbb108d.png ef79d8e02838fd54b6da9eef29f1ec6f.png 2c38bc96323dc209134319fa2ef02292.png efc414dfa14de5fd79e66d3f775f5e82.png您的点赞、在看和关注,是对小编莫大的支持和鼓励哟! 5fee78a752a8a81588be49674dfb46b4.gif
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值