标明Java类之间关系的一些标志(其实,是箭头)

  有几种基本的关系分别是:Association, Multiplicity, Aggregation, Composition, Inheritance / Generalization.

  Association太简单了,就不再重复了;Multiplicity就是字面上的意思(多样性),被联系的两者可以说一边的一个对应另一边的多个,or vice versa;

Aggregation上次也回顾过其和Association的区别,不过现在发现Composition和Aggregation也很容易混淆,但是呢,有个很容易辨别的不同之处,那就是Composition中包含的多个另一个类的对象会在Composition“灭亡”后也随之灭亡(如一个杯子没了,那么杯盖当然也就没了),而Aggregation中的相反则持续存在(如图书馆里的书和图书馆的关系,图书馆没了,书照样存在),后面的一个继承关系就更简单了。

  以上。

时间: 2024-08-19 22:46:40

标明Java类之间关系的一些标志(其实,是箭头)的相关文章

Java类之间的关联关系(转载)

Java类之间的关联关系 UML类图中的关系分为四种:泛化.依赖.关联.实现:关联关系又可以细化为聚合和组合.一.泛化(Generalization)泛化是父类和子类之间的关系,子类继承父类的所有结构和行为.在子类中可以增加新的结构和行为,也可以覆写父类的行为. 一般用一个带空心箭头的实线表示泛化关系,UML图如下: 泛化对应Java中继承关系,即子类继承父类中出private修饰外的所有东西(变量.方法等).示例代码: public class Animal { } public class

类与类之间关系,用C#和JavaScript体现

前言 类之间的关系有六种,分别是: 关联关系(Association) 泛化关系(Generalization) 依赖(Dependency) 聚合(Aggregation) 组合(Composite) 类与类之间关系 关联(Association) 两个相对独立的对象,当一个对象的实例与另一个对象的实例存在固定关系时,这两个对象之间就存在关联关系,关联体现的是一种强关联关系,关联关系形式有四种:单向关联.双向关联.自身关联和多维关联. 单向关联 场景:订单和商品,订单中包含商品,但是商品并不知

MFC中CMainFrame类CDoc类CView类CApp类之间关系

用APPWIZARD这个工具声称的应用程序架构包括了应用程序基本的四个类, 分别是:CApp,CMainFrame,CDoc,CView. 其中 CApp负责整个应用程序的管理,CDOC类中有一个CAPP的指针,也可以认为应用程序是从CApp开始执行的. CMainFrame是主窗口框架 CDoc是应用程序数据来源(文档)主要是用来管理数据,提供保存和加载数据的功能.有关文件的读写操作在CDoc的Serialize函数中进行. CView是应用程序数据显示(视图)主要是用来数据显示,以及给用户提

【深入理解JVM】:Java类继承关系中的初始化顺序

Java类初始化的顺序经常让人犯迷糊,现在本文尝试着从JVM的角度,对Java非继承和继承关系中类的初始化顺序进行试验,尝试给出JVM角度的解释. 非继承关系中的初始化顺序 对于非继承关系,主类InitialOrderWithoutExtend中包含了静态成员变量(类变量)SampleClass 类的一个实例,普通成员变量SampleClass 类的2个实例(在程序中的顺序不一样)以及一个静态代码块,其中静态代码块中如果静态成员变量sam不为空,则改变sam的引用.main()方法中创建了2个主

Java类继承关系中的初始化顺序

Java类初始化的顺序经常让人犯迷糊,现在本文尝试着从JVM的角度,对Java非继承和继承关系中类的初始化顺序进行试验,尝试给出JVM角度的解释. 非继承关系中的初始化顺序 对于非继承关系,主类InitialOrderWithoutExtend中包含了静态成员变量(类变量)SampleClass 类的一个实例,普通成员变量SampleClass 类的2个实例(在程序中的顺序不一样)以及一个静态代码块,其中静态代码块中如果静态成员变量sam不为空,则改变sam的引用.main()方法中创建了2个主

Java 类属性继承关系

java中涉及到子类继承父类,想要改写父类中的某个字段的问题,在子类中可以声明与父类中属性名.类型完全一样的属性,在子类中调用这些属性即为调用子类中定义的这些属性,而不是继承自父类的属性.而父类中同名的属性的值也不会受子类中同名属性的影响,即子类中的属性不能覆盖父类中的属性,如果想修改父类中的属性,只能通过set方法或者直接对父类中的属性幅值,而不会存在类似于子类重写父类中的方法这样的情况.

【47】java的类之间的关系:泛化、依赖、关联、实现、聚合、组合

java的类之间的关系:泛化.依赖.关联.实现.聚合.组合 泛化: ? 泛化关系(Generalization)也就是继承关系,也称为"is-a-kind-of"关系,泛化关系用于描述父类与子类之间的关系,父类又称作基类或超类,子类又称作派生类.在UML中,泛 化关系用带空心三角形的直线来表示. ? 在代码实现时,使用面向对象的继承机制来实现泛化关系,如在Java语言中使用extends关键字.在C++/C#中使用冒号":"来实现. 泛化对应Java中继承关系,即子

类之间的几种关系

Java类之间的关联关系 UML类图中的关系分为四种:泛化.依赖.关联.实现:关联关系又可以细化为聚合和组合. 一.泛化(Generalization) 泛化是父类和子类之间的关系,子类继承父类的所有结构和行为.在子类中可以增加新的结构和行为,也可以覆写父类的行为. 一般用一个带空心箭头的实线表示泛化关系,UML图如下: 泛化对应Java中继承关系,即子类继承父类中出private修饰外的所有东西(变量.方法等).示例代码: public class Animal { } public clas

设计模式之UML(一)类图以及类间关系(泛化 、实现、依赖、关联、聚合、组合)

类图用于描述系统中所包含的类以及它们之间的相互关系,帮助人们简化对系统的理解,它是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据.接下来我们就来谈谈类图的组成,在下一篇中我们将讨论一下类图之间的关系. 一.类图的组成 1. 普通类 上图就是一个UML的普通类图,从上图我们看出,一个UML通常由三部分组成. 第一部分是类名:每个类都必须有一个名字,类名是一个字符串. 第二部分是类的属性(Attributes):属性是指类的性质,即类的成员变量.一个类可以有任意多个属性,也可以没有属