UML中,类图的使用最为广泛,一个类图包括三部分:
-
generalization(泛化)
子类与父类之间的继承关系,子类可以overwrite父类的方法或参数;还可以实现多态(polymorphism)。表示“is a kind of”的关系
-
notes and comments
可以对类做注释,之间用虚线表示,无箭头。
-
dependency(依赖)
表示两个元素之间,如果一个发生改变,也会影响到另一个,之间用一条虚线加箭头表示。在类中,依赖的关系有如下几种:一个类向另一个发送消息;一个类把另一个当做本类数据的一部分;一个类当做另一个类方法中的参数。依赖关系应该被谨慎控制,不然我们对程序做的任何改动都会造成连锁反应。应该把表现与逻辑解耦。依赖的情况,可以用很多关键字表示。
- <<call>> 源端(调用方、元素)调用目标(target)的方法
- <<create>> 源端(调用方)创建目标对象
- <<derive>> 源端(调用方)由目标对象衍生出来(??
)
- <<instantiate>> 源端(调用方)是目标端的一个实例(如果源端是一个类,那么目标端就是一个元类(metaclass))
- <<permit>> 目标端允许源端访问它的私有(private)属性
- <<realize>> 源端是目标端的一个实现(implementation)
- <<refine>> 修饰表示不同语义等级之间的关系(??
)
- <<substitute>> 源端可以替代目标对象
- <<trace>>
- <<use>> 源端需要目标端的实现
要降低元素之间的依赖程度,要防止循环依赖。
-
Constraint Rules
限制条件一般写在{}中,如:{限制名称:限制条件解释},在Design by Contract有三种情况:
-
post-condition
(事后条件) 限制操作后应该得到的结果
-
pre-condition(事先条件) 限制操作之前应该有如何的操作
-
invarian(不变条件) 限制操作中,类中某个条件不会变,如一个账户,在增加xx钱,再减少xx钱,余额是一定的。
-
补充1:聚集(aggregation)和组合(composition),这个是需要从上下文的语义关系才能看出来的。聚集的意思是:当需要对“整体/部分”关系建模时,其中一个类描述了一个较大的事物(“整体”),它有较小的事物(“部分”)组成。把这种关系称为聚集,它描述了“has a”的关系,意思是整体对象拥有部分对象,用一条直线加上一个空菱形表示,空菱形指向整体一端,例如汽车对象和发动机、轮子对象的关系。组合使用一条直线加上一个实菱形表示,与聚集的区别是,两个类之间的关系式(contains a),两个类之间是强关联,一个类销亡,另一个类也肯定消亡。
-
补充2:http://www.iteye.com/topic/37302
-
补充3:当需要表示静态的属性或方法时,须在相应的属性和方法下面画一条实线。当命名接口时,需要在接口名上方加上<<interface>>标签。
分享到:
相关推荐
UML class diagram
组合关系的生命周期与整体对象紧密相连,整体对象销毁时,部分对象也随之销毁。例如,一个文档与其版本之间的关系就是组合关系。在C#中,组合关系通常通过在构造函数中创建部分对象来实现,如`public ClassTwo class...
《UML 2 类图设计指南》 UML(统一建模语言)是软件工程领域中用于系统建模的一种标准语言,它通过图形化的方式帮助我们理解和表达软件系统的结构和行为。类图是UML中的一种核心图表,主要用于描绘系统的静态结构,...
其中,类图(Class Diagram)是UML中最常用的一种图表类型,用于展示系统中类的静态结构及其相互关系。本文将详细介绍类图的基本概念、组成元素以及如何使用类图来描述系统。 #### 二、类图目的与作用 类图的主要...
统一建模语言(UML)类图教程涵盖了如何使用UML来构建和可视化面向对象系统。UML类图是由一组类和类之间的关系集合构成的图形化表示方法。在面向对象系统中,一个类提供了一个明确定义责任集合的清晰抽象。类由三个...
2. **类图(Class Diagram)**:类图展示了类、接口以及它们之间的关系,如继承、实现和关联等。它是静态结构的表示,用于描绘系统的数据模型。 3. **对象图(Object Diagram)**:对象图是类图在特定时刻的实例,...
首先,UML的基础知识包括了它的七大图类:用例图(Use Case Diagram)、类图(Class Diagram)、对象图(Object Diagram)、序列图(Sequence Diagram)、协作图(Collaboration Diagram)、状态图(State Diagram)...
4. **类图(Class Diagram)**:显示系统中的类、接口和它们之间的关系,如继承、实现、关联等,用于静态结构的建模。 5. **对象图(Object Diagram)**:类图的实例,展示具体对象之间的关系。 6. **序列图...
4. **类图(Class Diagram)**:类图是UML中最常见的图,它描绘了类、接口、对象之间的结构关系,如继承、实现、关联、聚合和组合等。类图不仅用于设计阶段,还可以作为代码生成的输入,帮助开发者建立清晰的系统...
1. **类图(Class Diagram)**:类图是UML中最重要的图之一,它展示了系统中的类、接口及其相互关系。类图中包含了类的属性、操作以及类之间的关联、继承和依赖关系。 2. **用例图(Use Case Diagram)**:用例图...
类图(Class Diagram)是 UML 中的一种静态结构图,它描述了模型中的类、类的内部结构和类之间的关系。在系统设计中,类图可以让思路更加清晰,帮助开发者更好地理解系统的结构和行为。 类之间的关系有五种: 1. ...
2. **类图(Class Diagram)**:描绘了系统的静态结构,包括类、接口以及它们之间的关系,如继承、关联、依赖等。类图有助于设计阶段的抽象和模块划分。 3. **序列图(Sequence Diagram)**:表示对象之间随时间...
"UML基础之10种图" UML是Unified Modeling Language的缩写,翻译为统一建模语言。它是1997年由Object Management Group(对象管理组)发布的。UML是一种用来描述、构建、可视化和文档化软件系统的语言。它与程序...
1. **类图(Class Diagram)**:展示类之间的静态关系,是最常用的UML图之一。它可以帮助理解系统中实体的结构和行为,包括属性、操作和关系等。 2. **用例图(Use Case Diagram)**:描述系统功能和用户需求,用例...
**UML基础** UML(统一建模语言)是一种标准化的通用建模语言,用于软件工程中的系统分析和设计。它提供了一套图形化符号,帮助开发者清晰地表达软件系统的结构和行为。UML的核心是它的图表,包括用例图、类图、...
1. 类图(Class Diagram):类图是UML中最常见的图,它展示了类的结构,包括类名、属性、操作以及类之间的关系,如关联、继承、依赖等。在学习UML时,理解类图的绘制和解析是基础。 2. 对象图(Object Diagram):对象...
1. **类图(Class Diagram)**:类图是UML中最基本的图表,用于描绘系统的静态结构。它展示了类、接口、对象以及它们之间的关系,如继承、实现、关联、依赖等。 2. **序列图(Sequence Diagram)**:序列图描述对象之间...
2. **类图(Class Diagram)**:类图是UML中最重要的图,用于表示类、接口以及它们之间的关系,如继承、关联、依赖和实现。类图描述了系统中的静态结构。 3. **对象图(Object Diagram)**:对象图是类图在特定时刻...
6. **图(Diagrams)**: UML包括多种图,如类图(Class Diagram)、用例图(Use Case Diagram)、序列图(Sequence Diagram)、协作图(Collaboration Diagram)、状态图(State Diagram)、活动图(Activity ...
UML use case diagram, class diagram, package diagram, object diagram, composite structure diagram, interaction diagram, sequence diagram, communication diagram, interaction overview diagram, activity...