对象图实例解析

news2024/11/20 10:46:43



总目录链接==>> AutoSAR入门和实战系列总目录

文章目录

  • 更快、更好、更轻松地学习 UML
    • 对象图的目的
    • 对象图一览
    • 类到对象图示例 - 订单系统
    • 基本对象图符号和符号
    • 类图与对象图
    • 对象图 - 通过示例学习
      • 对象图示例 I - 公司结构
      • 对象图示例 II - POS
      • 对象图示例 III - Writer
    • 对象结构建模步骤
    • 对象图示例 IV - 机器人移动行为
    • 对象图示例 V - 导出类似于通信图的对象结构

对象是运行时特定时刻的类实例,它可以有自己的状态和数据值。同样,静态UML对象图是类图的一个实例;它显示了系统在某个时间点的详细状态的快照,因此对象图包含对象及其关系,这可以被认为是类图或通信图的特例。
在这里插入图片描述

更快、更好、更轻松地学习 UML

您是否正在寻找一个免费的 UML 工具来更快、更轻松、更快速地学习 UML?Visual Paradigm Community Edition 是一款支持所有 UML 图类型的 UML 软件。它是一个屡获国际大奖的 UML 建模器,但它易于使用、直观且完全免费。

对象图的目的

对象图的使用相当有限,主要是为了展示数据结构的例子。

  • 在项目的分析阶段,您可能会创建一个类图来描述系统的结构,然后创建一组对象图作为测试用例来验证类图的准确性和完整性。
  • 在创建类图之前,您可能会创建一个对象图来发现有关特定模型元素及其链接的事实,或者说明所需分类器的特定示例。

对象图一览

对象图显示了实例化类和定义类之间的这种关系,以及系统中这些对象之间的关系。当您的系统类图非常复杂时,它们可用于解释系统的较小部分,有时还可以在图中对递归关系进行建模。

说明对象图的最佳方式是显示从相应类图派生的对象图。

以下订单管理系统显示了它们的关系。这个小类图显示大学系可以包含许多其他系,下面的对象图实例化类图,用一个具体的例子代替它。

在这里插入图片描述

类到对象图示例 - 订单系统

在这里插入图片描述

基本对象图符号和符号

对象名称:每个对象实际上都被符号化为一个矩形,提供对象的名称及其类下划线并用冒号分隔。在这里插入图片描述
对象属性:与类类似,您可以在单独的隔间内列出对象属性。然而,与类不同的是,对象的属性应该有赋值。在这里插入图片描述
**链接:**链接往往是与关联associations的实例。您可以在使用类图中使用的线条时绘制链接。在这里插入图片描述

类图与对象图

在 UML 中,对象图提供系统中实例的快照以及实例之间的关系。通过在类图中实例化模型元素,您可以探索系统在某个时间点的行为。

  • 对象图是一个 UML 结构图,显示模型中分类器的实例。
  • 对象图使用类似于类图中使用的符号。
  • 类图显示系统中的实际分类器及其关系
  • 对象图显示了这些分类器的特定实例以及这些实例之间在某个时间点的链接。
  • 您可以通过在类、部署、组件和用例图中实例化分类器来创建对象图。

对象图 - 通过示例学习

对象图示例 I - 公司结构

在这里插入图片描述

对象图示例 II - POS

在这里插入图片描述

对象图示例 III - Writer

在这里插入图片描述

对象结构建模步骤

没有消息的通信图(在以前版本的 UML 中称为协作)也称为对象图,对象之间的关系称为链接。对象图必须是静态类图的有效实例。对象必须有类,对象之间的链接必须是类之间关联的实例。这可以用作快速一致性检查。为此,我们可以使用以下步骤开发对象图:

  • 确定您要建模的机制。机制表示您正在建模的系统部分的某些功能行为****,这些功能或行为是类、接口和其他事物的社会相互作用的结果
  • 对于每种机制,确定参与此协作的类、接口和其他元素;还要确定这些事物之间的关系。
  • 考虑一种遍历此机制的场景。将那个场景及时冻结在某个时刻,并渲染参与该机制的每个对象。
  • 根据需要公开每个此类对象的状态和属性值,以了解场景。

对象图示例 IV - 机器人移动行为

同样,公开这些对象之间的链接,表示它们之间的关联实例。

如图所示,一个对象代表机器人本身(r,Robot 的一个实例),r 当前处于标记为 moving 的状态。这个对象有一个到 w 的链接,w 是 World 的一个实例,代表机器人世界模型的抽象。该对象链接到多个对象,这些对象由 Element 的实例组成,代表机器人已识别但尚未在其世界视图中分配的实体。这些元素被标记为机器人全局状态的一部分。

此时,w 链接到 Area 的两个实例。其中之一 (a2) 显示了它自己到三个 Wall 和一个 Door 对象的链接。这些墙中的每一个都标有其当前宽度,并且每个都显示为与其相邻的墙相关联。正如这个对象图所示,机器人已经识别出这个封闭区域,该区域的三个面都有墙,第四个面有一扇门。

在这里插入图片描述

对象图示例 V - 导出类似于通信图的对象结构

除了显示对象在特定时间点的状态外,对象图还可以用于表示运行时类之间交互的发生。结果看起来有点像通信图。下图提供了此类类图及其对应对象图的示例:

于通信图的对象结构

除了显示对象在特定时间点的状态外,对象图还可以用于表示运行时类之间交互的发生。结果看起来有点像通信图。下图提供了此类类图及其对应对象图的示例:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/388124.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java中的Comparator 与 Comparable详解

Comparator VS Comparable1. Comparator1.1 对一维数组进行排序1.2 对二维数组进行排序1.3 对对象数组进行排序2. Comparable3. 二者区别1. Comparator 通过源码发现Comparator是一个接口。 根据compare方法中的注释可以发现方法返回三种类型的值,正数、零、负数&a…

4.1 路由器(华硕 官改/梅林 华为 小米 路由) 使用花生壳 实现远程管理

最近添置了一台华硕的八爪鱼GT AC5300,到手后刷了官改,而里面软件中就提供了花生壳程序,想到花生壳为每个用户提供了两条免费映射(带宽为1mbs,流量为1g/月),所以就打算利用来做一个远程访问。具…

开发手册——一、编程规约_7.控制语句

这篇文章主要梳理了在java的实际开发过程中的编程规范问题。本篇文章主要借鉴于《阿里巴巴java开发手册终极版》 下面我们一起来看一下吧。 1. 【强制】在一个 switch 块内,每个 case 要么通过 break / return 等来终止,要么注释说明程序将继续执行到哪…

CSGO服务器配置全贴纸插件方法教程

CSGO服务器配置全贴纸插件方法教程 关于插件的警告 一定要了解V社对于CSGO社区服务器的规定,全皮肤插件/全手套插件等,在设置了GSLT的情况下,是有可能被封禁GSLT账号的(所以慎用) 配置好服务器之后呢,想安…

uniapp+uView2.0实现自定义动态tabbar

1.需求说明 2.实现原理说明 3.实现过程 3.1集成uView2.0 3.2 自定义tabbar 3.3 vuex定义tabbar共享信息 3.4 tabbar显示个数控制 1.需求说明 要求不同时间显示不同的tabbar.点击不同的tabbar跳转到不同的页面,能随时…

【2021.9.7】记一次exe手动添加shellcode

【2021.9.7】记一次exe手动添加shellcode 文章目录【2021.9.7】记一次exe手动添加shellcode0.大致思路1.获取MessageBox的真实地址VA2.通过OD在代码段添加shellcode3.dump出数据,设置程序OEP4.测试dump出来的exe5.方法总结测试的exe和添加了shellcode的exe:链接&…

【论文简述】PVSNet: Pixelwise Visibility-Aware Multi-ViewStereo Network(arxiv 2020)

一、论文简述 1. 第一作者:Qingshan Xu 2. 发表年份:2020 3. 发表期刊:arxiv 4. 关键词:MVS、3D重建、可见性、代价体、训练策略 5. 探索动机:ETH3D基准测试提供的图像包含强烈的视图变化,这就要求MVS…

刷题笔记4 | 24. 两两交换链表中的节点、19. 删除链表的倒数第N个节点、面试题 02.07. 链表相交、142.环形链表II

24. 两两交换链表中的节点 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 输入:head [1,2,3,4] 输出&#xff1a…

JDBC概述二(JDBC编程+案例展示)

一(JDBC的编程步骤) 1.加载数据库驱动 加载数据库驱动通常使用class类的静态方法forName()来实现,具体实现方式如下: Class.forName(“DriverName”),DriverName就是数…

RuoYi-Flowable-Plus(代码生成)

RuoYi-Flowable-Plus搭建 若依所有扩展项目的代码生成功能都是一样的&#xff0c;RuoYi-Flowable-Plus为例来演示。 模块创建 1.创建新模块ruoyi-student2.编辑RuoYi-Flowable-Plus\pom.xml <dependency><groupId>com.ruoyi</groupId><artifactId>ruoy…

搭建Java环境

使用Java语言开发首先必须搭建好开发环境。 以windows 10为例&#xff0c;进行Java环境搭建分为以下几个步骤 1、下载并安装JDK 2、配置环境变量 1、下载并安装JDK 可以访问网站http://www.oracle.com/index.html进行SDK的下载&#xff08;因网站经常改版&#xff0c;这里就…

python 操作word库docx 增强接口

前言用python 的docx 库操作word完成一些自动化的文档生成工作&#xff0c;但有时候会遇到docx库提供的操作无法直接满足业务上的需求&#xff0c;需要对其进行一些扩展。接口完善实现在指定的文字后面插入指定的文字任务&#xff1a;以下示例需要在文档中的所有 "人生苦短…

Swing进度条演示(传输真实文件)

目录 GIF演示 代码 此示例涵盖的知识点&#xff1a;线程、IO流、File、Swing、Listener、JFrame、JFileDialog、JOptionPane、JProgressBar、Timer GIF演示 代码 package psn.exer.progress;import javax.swing.*; import java.awt.*; import java.io.*; import java.util.U…

【PyTorch】P1 简介

PyTorch 基础PyTorch 简介机器学习框架PyTorch 与 TensorFlow 的核心之争PyTorch生态PyTorch能做什么开发环境选择Pytorch Cuda 安装与疑难解答PyTorch 简介 2002年提出 torch 框架&#xff0c;是通用的机器学习计算框架&#xff0c;支持GPU加速运算&#xff1b; 2011年推出 to…

k-Tree(DP)

k-Tree1、问题2、思路&#xff08;DP&#xff09;3、代码1、问题 2、思路&#xff08;DP&#xff09; 这道题翻译过来就是说&#xff0c;给我们一个k叉树&#xff0c;然后每个点到子节点的边的边权从左到右依次为1到k。然后我们从根节点出发&#xff0c;向下走&#xff0c;我们…

@RequestParam和@PathVariable的用法与区别

PathVariable PathVariable 映射 URL 绑定的占位符带占位符的 URL 是 Spring3.0 新增的功能&#xff0c;该功能在SpringMVC 向 REST 目标挺进发展过程中具有里程碑的意义通过 PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中&#xff1a;URL 中的 {xxx} 占…

[vue] Vite的使用

[vue] Vite的使用环境package.json文件变更变更脚手架修改脚本命令index.html 文件htmlWebpackPlugin 替换为 vite-plugin-htmlWere sorry but vue3.x-vite-ts doesnt work properly without JavaScript enabled. Please enable it to continue.vite.config.ts 文件变更vite-pl…

设计模式之行为型模式

四、行为型模式 行为型模式用于描述程序在运行时复杂的流程控制&#xff0c;即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务&#xff0c;它涉及算法与对象间职责的分配。 行为型模式分为类行为模式和对象行为模式&#xff0c;前者采用继承机制来在…

[acwing周赛复盘] 第 93 场周赛20230304

[acwing周赛复盘] 第 93 场周赛20230304 一、本周周赛总结二、 4867. 整除数1. 题目描述2. 思路分析3. 代码实现三、 4868. 数字替换1. 题目描述2. 思路分析3. 代码实现四、4869. 异或值1. 题目描述2. 思路分析3. 代码实现六、参考链接一、本周周赛总结 彩笔了&#xff0c;只A…

十大经典排序算法【快速了解】

文章目录一、算法分类二、经典排序算法总览三、算法复杂度四、代码实现一、算法分类 十种常见排序算法可以分为两大类&#xff1a; 比较类排序&#xff1a; 通过比较来决定元素间的相对次序由于其时间复杂度不能突破O(nlogn)&#xff0c;因此也称为非线性时间比较类排序。 非…