幻之纪元·网游先锋

UML - 类图

上一节: UML - 标准关系图

上一节

下一节: UML - 对象图

下一节

UML - 类图

简述

类图是静态图。它表示应用程序的静态视图。类图不仅用于可视化,描述和记录系统的不同方面,还用于构造软件应用程序的可执行代码。

类图描述了类的属性和操作,以及强加给系统的约束。类图广泛用于面向对象的系统的建模,因为它们是唯一的UML图,可以直接使用面向对象的语言进行映射。

类图显示了类、接口、关联、协作和约束的集合。它也被称为结构图。

类图的目的

类图的目的是对应用程序的静态视图进行建模。类图是唯一可以直接使用面向对象的语言映射的图,因此在构造时被广泛使用。

UML图像活动图,序列图只能给出应用程序的序列流,但是类图有点不同。它是编码人员社区中最受欢迎的 UML 图。

类图的目的可以概括为 −

分析和设计应用程序的静态视图。

描述系统的职责。

组件和部署关系图的基础。

正向和逆向工程。

如何绘制类图?

类图是用于构建软件应用程序的最流行的UML图。学习类图的绘制过程非常重要。

类图在绘制时有很多属性需要考虑,但在这里,将从顶级视图考虑关系图。

类图基本上是系统静态视图的图形表示,表示应用程序的不同方面。类图的集合表示整个系统。

在绘制类图时应记住以下几点 -

类图的名称对于描述系统的各个方面应该有意义。

应事先确定每个元素及其关系。

应明确标识每个类的责任(属性和方法)

对于每个类,应指定最小数量的属性,因为不必要的属性会使关系图变得复杂。

在需要时使用注释来描述关系图的某些方面。在绘图的末尾,开发人员/程序员应该可以理解。

最后,在制作最终版本之前,应在普通纸上绘制图表,并尽可能多地返工以使其正确。

下图是应用程序的订单系统的示例。它描述了整个应用程序的特定方面。

首先,订单和客户被标识为系统的两个元素。他们具有一对多关系,因为客户可以有多个订单。

顺序类是一个抽象类,它有两个具体的类(继承关系)特殊顺序和正常顺序。

这两个继承的类具有作为 Order 类的所有属性。此外,它们还具有其他功能,如调度()和接收()。

考虑到上面提到的所有要点,绘制了以下类图。

在哪里使用类图?

类图是一个静态图,用于对系统的静态视图进行建模。静态视图描述系统的词汇表。

类图也被视为组件图和部署图的基础。类图不仅用于可视化系统的静态视图,还用于构造用于任何系统的正向和逆向工程的可执行代码。

通常,UML 关系图不直接与任何面向对象的编程语言进行映射,但类图是一个例外。

类图清楚地显示了与面向对象语言(如Java,C++等)的映射。从实践经验来看,类图一般用于施工目的。

简而言之,可以说,类图用于 -

描述系统的静态视图。

显示静态视图元素之间的协作。

描述系统执行的功能。

使用面向对象语言构建软件应用程序。

上一节: UML - 标准关系图

上一节

下一节: UML - 对象图

下一节

查看笔记 分享笔记

笔记内容:

称呼:

Email:

站点:

分享笔记 重置

分类导航

前端

Ajax 教程

Angular 教程

Aurelia 教程

Bootstrap 教程

ChartJS 教程

CSS 教程

ES6 教程

FontAwesome 教程

HTML 教程

HTML 字符集 教程

HTML 游戏 教程

JavaScript 教程

jQuery 教程

Less 教程

React 教程

Sass 教程

Stylus 教程

TypeScript 教程

Unity 教程

Vue.js 教程

WebAssembly 教程

XAML 教程

颜色 教程

服务端

C# 教程

C++ 教程

COBOL 教程

C语言 教程

Fortran 教程

Go 教程

Groovy 教程

Java 教程

JSP 教程

JVM 教程

Kotlin 教程

Lisp 教程

Lua 教程

Node.js 教程

Pascal 教程

Perl 教程

PHP 教程

Python 教程

Python 3 教程

Ruby 教程

Rust 教程

Scala 教程

Spring 教程

Spring Boot 教程

Spring Cloud 教程

VB.Net 教程

移动端

Android 教程

IOS 教程

Objective-C 教程

React Native 教程

Swift 教程

小程序 教程

数据库

Access 教程

DB2 教程

Mariadb 教程

Memcached 教程

MongoDB 教程

MySQL 教程

Neo4j 教程

PL/SQL 教程

PostgreSQL 教程

Redis 教程

SQL 教程

SQL Server 教程

SQLite 教程

T-SQL 教程

数据格式

Jackson 教程

JSON 教程

SVG 教程

XML 教程

开发工具

ActiveMQ 教程

Ant 教程

Apache HttpClient 教程

Apache POI PPT 教程

AWS 教程

Docker 教程

ElasticSearch 教程

ExpressJS 教程

GIT 教程

GitLab 教程

Google Maps 教程

Gradle 教程

Java NIO 教程

JavaFX 教程

JavaMail 教程

JDBC 教程

jMeter 教程

JPA 教程

jsoup 教程

Junit 教程

KoaJS 教程

Kubernetes 教程

Log4j 教程

Logstash 教程

Lucene 教程

Makefile 教程

Maven 教程

RESTful 教程

Sed 教程

SEO 教程

Servlet 教程

SLF4J 教程

Socket.IO 教程

Struts 教程

SVN 教程

TestNG 教程

UML 教程

UNIX / LINUX 教程

WebSocket 教程

WPF 教程

xStream 教程

区块链 教程

数据处理

Flink 教程

Flume 教程

Hadoop 教程

Hbase 教程

Hive 教程

Kafka 教程

Kibana 教程

MapReduce 教程

MATLAB 教程

MyBatis 教程

Pig 教程

R语言 教程

Solr 教程

Spark 教程

Storm 教程

Zookeeper 教程

大数据分析 教程

数据仓库 教程

数据挖掘 教程

计算机基础

HTTP 教程

IPv4 教程

IPv6 教程

Ubantu 教程

WebServices 教程

嵌入式系统 教程

操作系统 教程

数据结构和算法 教程

汇编语言 教程

物联网 教程

电子电路基础 教程

编译器设计 教程

网站开发 教程

计算机 教程

计算机基础 教程

计算机网络 教程

设计模式 教程

AI

CNTK 教程

Keras 教程

PyTorch 教程

TensorFlow 教程

人工智能 教程

机器学习 教程

Python 技术

Django 教程

Flask 教程

NumPy 教程

Pandas 教程

Pillow 教程

PyGTK 教程

PyQt5 教程

PySpark 教程

pytest 教程

Python -数据科学 教程

Python MySQL 教程

Python 取证 教程

Python 数据结构 教程

Python 文本处理 教程

Python 网络编程 教程

Python 网页抓取 教程

Python 设计模式 教程

RxPY 教程

SciPy 教程

Seaborn 教程

SymPy 教程

wxPython 教程

框架

Laravel 教程

Web 图标Icon 教程

Web2py 教程

WebGL 教程

WebRTC 教程

WordPress 教程

Yii 教程

Zend Framework 教程

SAP

Crystal Reports 教程