1. Overview
UML设计类中,类的关系分为Generalization(泛化),Dependency(依赖关系)、Association(关联关系)、Aggregation(聚合关系)、Composition(组合关系)五种!
2. Generalization(泛化)
Generalization(泛化)表现为继承或实现关系(is a)。具体形式为类与类之间的继承关系,接口与接口之间的继承关系,类对接口的实现关系。
3. Dependency(依赖)
表现为函数中的参数(use a)。是类与类之间的连接,表示一个类依赖于另一个类的定义,其中一个类的变化将影响另外一个类。例如如果A依赖于B,则B体现为局部变量,方法的参数、或静态方法的调用。
4. Association(关联)
表现为变量(has a )。类与类之间的联接,它使一个类知道另一个类的属性和方法。例如如果A关联于B,则B体现为A的全局变量。关联关系有双向关联和单向关联。双向关联:两个类都知道另一个类的公共属性和操作。单向关联:只有一个类知道另外一个类的公共属性和操作。大多数关联应该是单向的,单向关系更容易建立和维护,有助于寻找可服用的类。
5. Aggregation(聚合)
关联关系的一种,是强的关联关系。聚合关系是整体和个体的关系。普通关联关系的两个类处于同一层次上,而聚合关系的两个类处于不同的层次,一个是整体,一个是部分。同时,是一种弱的“拥有”关系。体现的是A对象可以包含B对象,但B对象不是A对象的组成部分。具体表现为,如果A由B聚合成,表现为A包含有B的全局对象,但是B对象可以不在A创建的时刻创建。
6. Composition(组合)
关联关系的一种,是比聚合关系强的关系。它要求普通的聚合关系中代表整体的对象负责代表部分的对象的生命周期。Composition(组合关系)是一种强的“拥有”关系,体现了严格的部分和整体的关系,部分和整体的生命周期一致。如果A由B组成,表现为A包含有B的全局对象,并且B对象在A创建的时刻创建。
注:转自http://blog.csdn.net/maybehelios/archive/2008/01/12/2038685.aspx
- 大小: 28.7 KB
- 大小: 34.2 KB
- 大小: 29.5 KB
- 大小: 45.4 KB
- 大小: 45.1 KB
分享到:
相关推荐
分布外泛化(Out-of-Distribution Generalization, OOD)是深度学习领域的一个关键挑战,尤其是在现实世界的应用中,训练数据与测试数据的分布往往不完全相同,即非独立同分布(i.i.d.)假设通常无法满足。这篇由清华...
作者发现,即使使用弱模型生成的标签来微调强模型,强模型仍然可以表现出更好的性能,称为弱到强的一般化(weak-to-strong generalization)。这种现象表明,即使人类不能可靠地评估超人类模型的行为,也可以使用弱...
- **泛化(Generalization)与实现(Realization)**: 泛化是继承关系,实现是接口或抽象类的实现关系。 2. **UML图的种类** - **用例图(Use Case Diagram)**: 描述系统与外部参与者之间的交互,展示系统功能...
此外,UML中还有多种关系的表示法,如关联类(Association Class)、实例(Instance)、流(Flow)、泛化(Generalization)、实现(Implementation)、使用(Use)等。接口说明符(Interface Qualifier)如`role...
在《机器学习基石》课程笔记6中,林轩田教授主要讨论了机器学习中的泛化能力和成长函数,尤其是关于限制Break Point以及Bounding Function的基本和归纳案例。这些概念是理解机器学习算法性能的关键因素。...
泛化能力的理论(Theory of Generalization)是理解机器学习模型如何从训练数据中学习并预测新数据的关键。本讲座主要讨论了限制断点(Restriction of Break Point)以及边界函数(Bounding Function)的基本和归纳...
3. **关联(Association)**:这是用例图中最基本的关系,表示参与者与用例之间的连接。一条直线连接了参与者和用例,表示参与者可以执行用例,或者用例可以被参与者触发。 4. **扩展用例(Extension)**:有时,一...
1. 泛化关系(Generalization):这是一种继承关系,用带空心箭头的实线表示。例如,小汽车继承自车类,这种关系体现了“is-a”的概念,即小汽车是一种车。在代码实现中,这通常表现为子类继承父类。 2. 实现关系...
3. **关联(Association)**:用线表示的连接关系,连接参与者和用例,表明参与者如何与用例交互。线的箭头通常指向用例,表示参与者触发用例的行为。 4. **扩展(Extension)**:用“虚线+箭头”表示,表示一个...
4. **关联(Association)**: 关联描述了类之间的关系,比如“学生”和“课程”的关系可能是“参加”。关联可以通过线来表示,线的箭头指示了方向,线上的数字表示多重性,如1:1、1:n、n:m等。 5. **聚合...
2. 关联(Association):描述类之间的关系,包括普通关联、聚合和组合。 3.泛化(Generalization):描述类之间的继承关系,即is-a-kind-of关系。 4. 实现(Realization):描述类与接口之间的实现关系。 在UML...
此外,研究者提出了一个领域泛化ReID方法,称为双元泛化网络(Dual-Meta Generalization Network,DMG-Net),该方法利用元学习的优势,分别在训练过程和度量空间学习中进行优化。具体来说,DMG-Net设计了一个“学习...
医学图像分析中深度学习泛化的复杂性评估方法 此存储库中的代码基于我们的经验研究,该研究调查了针对乳房超声图像的监督深度学习分类器的复杂性度量与泛化能力之间的相关性。 该研究进行了。 用于医学图像分析的...
06-Maze-Generalization 6-1 什么是迷宫.mp4 6-2 生成迷宫基础.mp4 6-3 深度优先遍历生成迷宫.mp4 6-4 非递归深度优先遍历生成迷宫.mp4 6-5 广度优先遍历生成迷宫.mp4 6-6 随机队列生成迷宫.mp4 6-7 迷宫生成的迷雾...
- **泛化(Generalization)**:描述了一种特定到一般的关系,即子类和父类之间的继承关系。 - **关联(Association)**:表示两个或多个类之间的关系,通常用来表示对象之间的链接。 #### 机器可读文件 - **ptc/09-...
关系(Relationships)如关联(Association)、依赖(Dependency)、泛化(Generalization)和实现(Realization)连接了模型中的不同元素,揭示了它们之间的相互作用。 在实际应用中,UML的建模过程通常分为以下...
- **关联(Association)**:识别两个或多个类之间的连接关系。 - **泛化(Generalization)**:理解父类与子类之间的继承关系。 - **聚合(Aggregation)** 和 **组合(Composition)**:区分两种类型的关联关系,其中组合...