UML【类图包图对象图】

2024-03-01 02:20
文章标签 对象 uml 类图 包图

本文主要是介绍UML【类图包图对象图】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一.类和类图

1.类是面向对象程序设计实现信息封装的基础。类是一种用户定义类型,也称类类型。每个类包含数据说明和一组操作数据或传递消息的函数。类的实例称为对象。

2.类图:用来描述系统的静态部分。

3.类图的关系

(1).关联

   (1.1)普通关联:两个类有结构关系,用直线表示。

        应用于关联的修饰:(1).名称:用以描述该关系的性质。

                                       (2).角色:当一个类处于关联的某一端时,该类就在这个关系中扮演了一个特定的角                           色;角色是关联中靠近它的一端的类对另外端的类呈现的职责。

 

(3).多重性:关联角色的多重性是说明一个关联的实例中有多少个相互链接的对象。

 

两个类之间可以有多种关联;一个类可以和多个类关联。

   (1.2)聚合:描述整体和部分关系,可独立存在,用空心的菱形表示。

   (1.3)组合:描述整体和部分的关系,不能独立的存在,用实心的菱形表示。

(2).依赖:依赖是一种使用关系,他说明一个事物规格说明的变化可能影响到使用它的另一个事物。但反之未必。用虚线的箭头表示,箭头表示被依赖的一方。

 (3).泛化:继承有父类和子类。

             单重继承:有且只有一个父类。

             多重继承:可以有很多个父类。

 

(4).实现:实现是类元之间的语义关系,在该关系中一个类元描述了另一个类元保证实现的契约。

 

4.类图的元素

类,接口,协作,关系

(一)类:包括名称,属性和操作。

类属性的语法为:

[可见性] 属性名 [:类型] [=初始值] [{属性字符串}]

可见性:公有(Public)“+”、私有(Private)“-”、受保护(Protected)“#”

 

类操作的语法为:

[可见性] 操作名 [(参数表)] [:返回类型] [{属性字符串}]

可见性:公有(Public)“+”、私有(Private)“-”、受保护(Protected)“#”、包内公有(Package)“~”

(二)接口:在没有给出对象的实现和状态的情况下对对象行为的描述。一个类可以实现一个或多个接口。

使用两层矩形框表示,与类图的区别主要是顶端有<>显示

 

或者用一个空心圆表示


例:下图中,user和GenealUser,Oprerator,Administrator是一种继承关系,表示一般与特殊的关系,用带空心箭头的实线表示,箭头指向父类。

 

 

二.包图

 

1.包的作用:逻辑上把一个复杂的图模块化;组织源代码。

2.包中的元素:类,接口,构件,用例,其他包等。若包被撤销,则其中的元素也被撤销了。

3.包与包之间的关系:泛化;细化;依赖(常用,如果两个包中的任意两个类之间有依赖关系,则这两个包之间有依赖关系。)

4.包的常见问题:(1).一定要避免循环依赖产生。

                           (2).测试时可以以包为测试单位。

                           (3).应该尽量把概念和语义上相接近的元素包含在同一个包中。

                           (4).对于一个包,找出哪些包内的元素是可以在包外访问的,把这些元素标记为公共的,其        他所有元素都标记为受保护的或者私有的。

 

三.对象图

1.对象图描述一个系统在某个具体时刻的静态结构。而类图描述所有可能的情况。在图形上,对象图是顶点和弧的集合。对象图表示冻结了的系统运动的某一瞬间。

2.对象图的构成:对象,连接,包。课包含注解和约束。

 

 

这篇关于UML【类图包图对象图】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/760875

相关文章

JSON字符串转成java的Map对象详细步骤

《JSON字符串转成java的Map对象详细步骤》:本文主要介绍如何将JSON字符串转换为Java对象的步骤,包括定义Element类、使用Jackson库解析JSON和添加依赖,文中通过代码介绍... 目录步骤 1: 定义 Element 类步骤 2: 使用 Jackson 库解析 jsON步骤 3: 添

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去

Java如何通过反射机制获取数据类对象的属性及方法

《Java如何通过反射机制获取数据类对象的属性及方法》文章介绍了如何使用Java反射机制获取类对象的所有属性及其对应的get、set方法,以及如何通过反射机制实现类对象的实例化,感兴趣的朋友跟随小编一... 目录一、通过反射机制获取类对象的所有属性以及相应的get、set方法1.遍历类对象的所有属性2.获取

java中VO PO DTO POJO BO DO对象的应用场景及使用方式

《java中VOPODTOPOJOBODO对象的应用场景及使用方式》文章介绍了Java开发中常用的几种对象类型及其应用场景,包括VO、PO、DTO、POJO、BO和DO等,并通过示例说明了它... 目录Java中VO PO DTO POJO BO DO对象的应用VO (View Object) - 视图对象

vue如何监听对象或者数组某个属性的变化详解

《vue如何监听对象或者数组某个属性的变化详解》这篇文章主要给大家介绍了关于vue如何监听对象或者数组某个属性的变化,在Vue.js中可以通过watch监听属性变化并动态修改其他属性的值,watch通... 目录前言用watch监听深度监听使用计算属性watch和计算属性的区别在vue 3中使用watchE

Java将时间戳转换为Date对象的方法小结

《Java将时间戳转换为Date对象的方法小结》在Java编程中,处理日期和时间是一个常见需求,特别是在处理网络通信或者数据库操作时,本文主要为大家整理了Java中将时间戳转换为Date对象的方法... 目录1. 理解时间戳2. Date 类的构造函数3. 转换示例4. 处理可能的异常5. 考虑时区问题6.

Java第二阶段---09类和对象---第三节 构造方法

第三节 构造方法 1.概念 构造方法是一种特殊的方法,主要用于创建对象以及完成对象的属性初始化操作。构造方法不能被对象调用。 2.语法 //[]中内容可有可无 访问修饰符 类名([参数列表]){ } 3.示例 public class Car {     //车特征(属性)     public String name;//车名   可以直接拿来用 说明它有初始值     pu

HTML5自定义属性对象Dataset

原文转自HTML5自定义属性对象Dataset简介 一、html5 自定义属性介绍 之前翻译的“你必须知道的28个HTML5特征、窍门和技术”一文中对于HTML5中自定义合法属性data-已经做过些介绍,就是在HTML5中我们可以使用data-前缀设置我们需要的自定义属性,来进行一些数据的存放,例如我们要在一个文字按钮上存放相对应的id: <a href="javascript:" d

一步一步将PlantUML类图导出为自定义格式的XMI文件

一步一步将PlantUML类图导出为自定义格式的XMI文件 说明: 首次发表日期:2024-09-08PlantUML官网: https://plantuml.com/zh/PlantUML命令行文档: https://plantuml.com/zh/command-line#6a26f548831e6a8cPlantUML XMI文档: https://plantuml.com/zh/xmi

PHP7扩展开发之对象方式使用lib库

前言 上一篇文章,我们使用的是函数方式调用lib库。这篇文章我们将使用对象的方式调用lib库。调用代码如下: <?php $hello = new hello(); $result = $hello->get(); var_dump($result); ?> 我们将在扩展中实现hello类。hello类中将依赖lib库。 代码 基础代码 这个扩展,我们将在say扩展上增加相关代码。sa