UML类图

UML统一建模语言,类图、时序图等详解 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标准。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。统一建模语言能为软件开发的所有阶段提供模型化和可视化支持。而且融入了软件工程领域的新思想、新方法和新技术,使软件设计人员沟通更简明,进一步缩短了设计时间,减少开发成本。它的应用领域很宽,不仅适合于一般系统的开发,而且适合于并行与分布式系统的建模。 阅读详情

UML

​
​ 分类:

​  ​1.用例图
​
​  ​ 2.静态结构图:类图、对象图、包图、组件图、部署图

​  ​ 3.动态行为图:交互图(时序图与协作图)、状态图、活动图
​
 

UML类图

​ 代码形式:

public class Person{
	private Integer id;
	private String name;
	public void setName(String name){this.name=name;}
	public String getName(){retrun name;}
}

UML类图
在这里插入图片描述
 

类之间的关系

 

依赖关系

​  ​只要是在类中用到了对方,那么他们之间就存在依赖关系。如果没有对方,连编译都通过不了。

​  ​代码表现:局部变量、方法参数、返回值类型、方法中使用
 ​ ​ ​ 【箭头及指向】带箭头的虚线,指向被使用者
 
eg:

​ 代码:

public class PersonServiceBean{
	private PersonDao personDao;
	public void save(Person person){}
	public IDCard getIDCard(Integer personid){}
	public void modify(){
		Department department = new Department();
	}
}
public class PersonDao{}
public class IDCard{}
public class Person{}
public class Department{}

UML图

在这里插入图片描述

 

泛化

​  ​依赖关系的特例。实际上就是继承关系

​  ​ ​ ​带三角箭头的实线,箭头指向父类

代码:

public abstract class DaoSupport{}
public class PersonServiceBean extends DaoSupport{}

UML图

在这里插入图片描述

 

实现

​ ​ 接口被实体类实现。

​  ​ ​ ​带三角箭头的虚线,箭头指向接口

代码:

public interface PersonService{}
public class PersonServiceBean implements PersonService{}

UML图
在这里插入图片描述

 

关联

​ ​ 类与类之间的联系。

​ ​ 关联具有指向性:双向关系或单项关系

​  ​关联具有多重型:1:1【0:0个或多个 。0,1:0个或1个。n…m:n到每个都可以。m…*:表示至少m个 】

 ​ ​ ​​带普通箭头的实心线,指向被拥有者

eg:

​ 单向一对一

public class Person{
	private IDCard card;
}

UML
在这里插入图片描述

​ 双向一对一关系

public class Person{
	private IDCard card;
}
public class IDCard{
	private Person person;
}

UML
在这里插入图片描述
 

聚合

​  ​表示的时整体和部分的关系,并且整体与部分可分开。

​  ​是关系关系的特例。因此也具有指向性与多重性。

​ ​ ​ ​ 带空心菱形的实心线,菱形指向整体

eg:

​  ​电脑可以连接键盘、显示器、鼠标等配件。而配件又是可以从电脑中分离的。

public class Computer{
	private Mouse mouse;
	private Monitor monitor
}

UML
在这里插入图片描述

 

组合

 ​也表示整体与部分的关系,但是整体与部分不可分开。【同生死。eg:人与脑袋】

​  ​若是觉得鼠标和显示器与电脑是不可分离的状态,则升级为 组合关系。

​  ​ ​ ​带实心菱形的实线,菱形指向整体

public class Computer{
	private Mouse mouse=new Mouse();
	private Monitor monitor=new Monitor();
}

UML
在这里插入图片描述

统一建模语言UML:类图、顺序图、通信图、状态图、活动图、构件图 统一建模语言UML:类图、顺序图、通信图、状态图、活动图、构件图、部署图 阅读详情

相关推荐

puml2code:PlantUML代码生成器

PlantUML代码生成器(puml2code) 一个命令行实用程序,它将代表类UML图的Plantuml -text文件转换为源代码。 基于puml解析器,但使用es6重写。 安装 全局安装将puml2code命令带到PATH $ npm i -g puml2code 开发安装 $ git clone https://github.com/jupe/puml2code.git $ npm i $ bin/puml2code -h 运行测试 $ npm test 支持的输出语言 (咖啡脚本) (csharp) (cpp) (ecmascript5) (ecmascri

java 23 种设计模式-05-原型模式(Prototype Pattern)

目录 目录 原型模式 实际案例 定义 测试 实现方式 UML & Code UML Code 系列导航 原型模式 原型模式(Prototype Pattern)是用于创建重复的对象,同时又能保证性能。 这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。当直接创建对象的代价比较大时,...

3万+

java单机版的code2uml工具

分析源码很好用的工具,直接加载jar,生成uml类图的关系

puml2code:PlantUML代码生成工具

puml2code:PlantUML代码生成工具 在软件开发中,UML(统一建模语言)图是表达和设计软件架构的重要工具。PlantUML 是一种简单且强大的工具,用于创建各种UML图。而 puml2code 项目则将 PlantUML 代码转换为多种编程语言的源代码,为开发者提供了极大的便利。 项目介绍 puml2code 是一个命令行工具,它可以将 PlantUML 文件(表示类图的文本文件)转...

gitblog_00003的博客 573

VS2010 UML2Code

Whats is UML2Code?¶ It is a code to UML generator from JAVA and Python and viceversa (ie. UML to code generator). And the features?¶ UML2Code has this features: •Extensible •Easy of use •No more time consuming than others!

在 Ubuntu 22.04 上配置 SonarQube 与 CI/CD 流水线实现自动化代码审查

本文详细介绍了在Ubuntu 22.04系统上配置SonarQube并与CI/CD流水线集成的完整流程,实现自动化代码审查。从环境准备、数据库配置到核心参数调优,再到与Jenkins和GitHub Actions的深度集成,提供了实战技巧和性能优化建议,帮助团队提升代码质量监控效率。

weixin_28829325的博客 260

UML 在 vs-code上的快速使用

将2.2中的code 复制进 .puml 文件中, 然后生成甘特图。使用指令: alt + d。

ACE 1243

别再死记硬背了!用51单片机的AD/DA和PWM,亲手做个简易示波器信号发生器

本文详细介绍了如何利用51单片机的PWM和AD/DA功能制作简易示波器信号发生器。通过PWM模拟DAC输出波形,结合XPT2046 ADC进行信号测量,实现方波、三角波和正弦波的生成与显示。项目不仅成本低廉,还能帮助电子爱好者深入理解51单片机的核心功能,是理论与实践结合的绝佳案例。

weixin_28675839的博客 265

统一建模语言(Unified Modeling Language,UML)类图

统一建模语言(Unified Modeling Language,UML)是用来设计软件的可视化建模语言。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。

guojiaqi_的博客 1295

游戏开发中的AI与RAG技术应用实践

检索增强生成(RAG)技术是当前AI领域的重要突破,它通过结合信息检索与文本生成能力,显著提升了大型语言模型在专业领域的实用性。其核心原理是建立动态知识库,在生成响应前先检索相关专业资料作为上下文。这种技术特别适合解决游戏开发中的复杂问题,如虚幻引擎API查询、角色背景生成等技术场景。在实际工程应用中,RAG系统需要精心设计分层检索策略、缓存机制和硬件加速方案。通过将RAG深度集成到游戏引擎工作流中,开发者可以快速解决技术难题,新成员也能更快掌握引擎特性,大幅提升团队协作效率。

weixin_29323977的博客 534

基于STM32的半导体制冷片温度控制

制冷片温度控制,温控范围15℃~45℃,本人菜鸡一枚,大佬绕路。 #include "stm32f10x_gpio.h" #include "relay.h" void relay_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//Ê...

大白兔的博客 9015

如何画UML类图

简单介绍 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,面向对象的建模语言的国际标准。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。 类、接口、类图 类 类(Class)是指具有相同属性、方法和关系的对象的抽象,它封装了数据和行为,是面向对象程序设计(OOP)的基础,具有封装性、继承性和多态性等三大特性。在 UML 中,类使用包含类名、属性和操作且带有分隔线的矩形来表示。 类名 类名(Name)是一个字符串,例如,

java_kider的博客 4万+

APM 飞行模式切换--源码详解

APM飞控中有很多种方式可以改变飞行模式。其中最常见的为遥控器切换和地面站切换两种方式。 下面以遥控器切换为例详解飞行模式切换逻辑。 APM遥控器切换飞行模式的源代码在RC_Channel.cpp文件中的RC_Channel_Copter::do_aux_function_change_mode()函数中。 const bool success = copter.set_mode()调用Copter::set_mode()函数,在set_mode()函数中调用mode_fro...

qq_30623591的博客 2440

详解UML(统一建模语言)中的类图、用例图、活动图、状态图、顺序图

好歹还上过一学期的UML课 整理一下笔记吧 UML:统一建模语言(Unified Modeling Language) UML是非专利的第三代建模和规约语言 是用于说明 可视化 构建和编写一个正在开发的 面向对象的 软件密集系统的制品的开放方法 UML展现了一系列最佳工程实践 这些最佳实践在对大规模 复杂系统进行建模方面 特别是在软件架构层次已经被验证有效 模型图的分类: 1、用例图 从用户的角...

"✧treasure mountain✧" 3万+

JAVA:Spring Boot 集成 Forest 优雅的 HTTP 客户端

Forest是一个优雅的Java HTTP客户端框架,通过注解式声明简化HTTP接口调用。它支持多HTTP客户端、自动参数绑定、序列化、重试机制和拦截器等功能。本文演示了如何在Spring Boot中集成Forest,包括配置、接口定义和调用示例,还展示了POST请求、文件上传等常见场景。相比传统HTTP客户端,Forest具有声明简洁、功能完善的特点,特别适合微服务调用和第三方API对接,能显著提升开发效率和代码可维护性。

木头 427

Android编译系统——Android.bp语法介绍(十五)

Android.bp 是 Android 构建系统(Android Build System)中的配置文件,用于描述如何编译和打包项目中的模块。它是用 Blueprint 编写的,其语法类似于 JSON,但专为 Android 编译系统设计,提供了更高效、灵活的模块化管理。

小旭的专栏 939

第二章、UML统一建模语言与UML类图及类图之间的关系

UML(Unified Modeling Language,统一建模语言)是用来设计软件蓝图的可视化建模语言,是一种为面向对象系统的产品进行说明、可视化和编制文档的标准语言,独立于任何一种具体的程序设计语言。 1997 年 UML 被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标准。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。 应用场景 UML 能为软件开发的所有阶段提供模型化和可视化支持。而且融入了软件工程领域的新思想、新方法和新技术,使软件设计人员沟通更简...

gglove9800的博客 1010

Google Cameraserver 看门狗CameraServiceWatchdog超时crash原理分析

本文分析了Android CameraServiceWatchdog机制的工作原理。该看门狗用于监控相机服务关键操作(如close、flush)的超时情况,通过定时器线程检测阻塞问题。文章详细讲解了Watchdog的初始化流程、使能方式、内部定时器机制(默认周期100ms,650次循环触发超时),并提供了configureStreams阶段的客制化实现方案。当检测到超时,Watchdog会触发abort生成tombstone日志,便于调试分析。

1130

统一建模语言UML(7)部署图、类图

类图(Class Diagram): 类图是面向对象系统建模中最常用和最重要的图,是定义其它图的基础。类图主要是用来显示系统中的类、接口以及它们之间的静态结构和关系的一种静态模型。类图的3个基本组件:类名、属性、方法。

учёба 1044

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

UML类图全解析

画UML图的目的其实就是为了将自己的思想描述给别人,既可以对自己的抽象思路进行完整的实际复现,也可以将自己的思路呈现给别人去理解想法(软件是如何设计的),UML图在软件工程中很重要。只要在类中用到了对方,那么他们之间就存在依赖关系。如果没有对方,连编译也无法通过。泛化关系其实就是继承关系,它是依赖关系的特例。实现关系就是A类实现了B接口,是依赖关系的特例。关联关系其实就是类与类之间的联系,是依赖关系的特例。关联关系具有导航性:即双向关系或者单向关系。关系具有多重性:1."1":标识有且仅有一个。

2301_79108772的博客 2103

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Java程序设计——UML类图

一、定义 UML即统一建模语言(Unified Modeling Language),它是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。 从定义上看可能有点抽象,说白了就是一种由图表组成的标准化建模语言,一般我们理解的语言都是由文字组成,而这种统一建模语言是由图表组成的。我们知道开发一个软件系统,不光只有程序员参与,另外还有分析师、设计

Mr_John 1万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

3.UML中的类图及类图之间的关系

统一建模语言简介 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际标准。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。 统一建模语言能为软件开发的所有阶段提供模型化和可视化支持。而且融入了软件工程领域的新思想、新方法和新技术,使软件设计人员沟通更简...

bater2356的博客 5772

统一建模语言(UML) | 类图

什么是UML? UML是Unified Model Language的缩写,中文是统一建模语言,是由一整套图表组成的标准化建模语言 UML的优点: 1.在程序开发前用UML对整个软件设计有个直观的表现。 2。UML提供了极富表达能力的建模语言,可以让软件开发过程中的不同人员分别得到自己感兴趣的信息。 UML的分类 UML通常分为两类:结构图和行为图 结构图分为类图、轮廓图、组件图、组合结构图、对象图、部署图、包图。 行为图又分活动图、用例图、状态机图和交互图。 交互图又分为序列图、时序图、通讯图、交互概览

weixin_37632381的博客 1686

UML图-类与接口

目录 UML 图 —— 类之间的关系 UML-类图 UML-接口图 UML-继承关系 UML-实现关系 UML 图 —— 类之间的关系 UML-Unified Module Language 统一建模语言,可以很方便的用于描述类的属性,方法,以及类和类之间的关系 UML-类图 UML-接口图 UML-继承关系 带箭头的实线,表示 Spider,Cat, Fish都...

王俊的博客 4万+
上一篇: 原型模式&clone的学习
下一篇: 适配器模式
code_Floyed
博客等级 码龄7年 3粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值