聚合和合成关系

聚合和合成类似于特殊的关联

聚合:

A中可能有B对象,B对象不是A的一部分

class A{
private ArrayList<B> bs;
}
class B{
}

合成:

A中一定有B对象,并且生成A对象的同时一定生成B对象

class A{
private B b;
public A(){
  b=new B();
}
}

class B{
}
时间: 2024-12-18 20:58:23

聚合和合成关系的相关文章

关联、组合、聚合、依赖关系比較

类之间的关系 1. 种类: Generalization(泛化),Dependency(依赖关系).Association(关联关系).Aggregation(聚合关系).Composition(合成关系). 2.  当中Aggregation(聚合关系).Composition(合成关系)属于Association(关联关系),是特殊的Association关联关系. 3.  Generalization(泛化)表现为继承或实现关系(is a).详细形式为类与类之间的继承关系,接口与接口之间的

关联、组合、聚合、依赖关系比较 [转]

原帖地址:http://blog.csdn.net/maybehelios/article/details/2038685 类之间的关系 1. 种类: Generalization(泛化),Dependency(依赖关系).Association(关联关系).Aggregation(聚合关系).Composition(合成关系). 2.  其中Aggregation(聚合关系).Composition(合成关系)属于Association(关联关系),是特殊的Association关联关系. 3

关联、组合、聚合、依赖关系比较

类之间的关系种类: Generalization(泛化),Dependency(依赖关系).Association(关联关系).Aggregation(聚合关系).Composition(合成关系).    其中Aggregation(聚合关系).Composition(合成关系)属于Association(关联关系),是特殊的Association关联关系.Generalization(泛化)表现为继承或实现关系(is a).具体形式为类与类之间的继承关系,接口与接口之间的继承关系,类对接口的

一.oracle的SQL中group by使用的情况(与聚合函数的关系)

SELECT r.industry_1,r.industry_2,r.agent_id,r.agent_name,COUNT(DISTINCT r.customer_name_a)数据总量,COUNT(DISTINCT CASE WHEN r.ifhs='Y' THEN r.customer_name_a END)海关数据量,COUNT(DISTINCT CASE WHEN r.ifgjh='Y'THEN r.customer_name_a END)广交会数据量,COUNT(DISTINCT C

java 基础(二)

java 基础(二)java 基础(二) 2016-2-1 by Damon 61. 编写多线程程序有几种实现方式 Java 5以前实现多线程有两种实现方法:一种是继承Thread类:另一种是实现Runnable接口.两种方式都要通过重写run()方法来定义线程的行为,推荐使用后者,因为Java中的继承是单继承,一个类有一个父类,如果继承了Thread类就无法再继承其他类了,显然使用Runnable接口更为灵活. 补充:Java 5以后创建线程还有第三种方式:实现Callable接口,该接口中的

Java编程思想读书笔记

声明:原创作品,转载时请注明文章来自SAP师太技术博客:www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将追究法律责任!原文链接:http://www.cnblogs.com/jiangzhengjun/p/4290955.html 第一章对象导论... 1 第二章一切都是对象... 4 第三章操作符... 10 第四章流程控制... 12 第五章初始化与清理... 14 第六章访问权限控制... 15 第七章复用... 23 第八章多态... 2

Java程序员面试题集(71-85)

Java程序员面试题集(71-85) 摘要:这一部分主要包括了UML(统一建模语言).面向对象的设计原则(六原则一法则).GoF设计模式.企业级设计模式.JDBC(Java数据库连接).XML(可扩展标记语言)等知识. 71.UML是什么?UML中有哪些图? 答:UML是统一建模语言(Unified Modeling Language)的缩写,它发表于1997年,综合了当时已经存在的面向对象的建模语言.方法和过程,是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化

Java面试题上

1.面向对象的特征有哪些方面?答:面向对象的特征主要有以下几个方面:- 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注这些行为的细节是什么.- 继承:继承是从已有类得到继承信息创建新类的过程.提供继承信息的类被称为父类(超类.基类):得到继承信息的类被称为子类(派生类).继承让变化中的软件系统有了一定的延续性,同时继承也是封装程序中可变因素的重要手段(如果不能理解请阅读阎宏博士的<Java与模式>或<设计模式精

java基础知识面试题(41-95)

41.日期和时间:- 如何取得年月日.小时分钟秒?- 如何取得从1970年1月1日0时0分0秒到现在的毫秒数?- 如何取得某月的最后一天?- 如何格式化日期?答:问题1:创建java.util.Calendar 实例,调用其get()方法传入不同的参数即可获得参数所对应的值.Java 8中可以使用java.time.LocalDateTimel来获取,代码如下所示. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 public class D