当前位置: 首页 > 知识库问答 >
问题:

聚合和合成之间的代码差异[重复]

林绪
2023-03-14

任何人都可以给出代码示例来显示聚合和组合之间的区别。我已经阅读了这篇文章,但不明白它们在代码上有何不同。

请通过代码显示差异。

共有1个答案

况谦
2023-03-14

组合和聚合的主要区别在于,组合是一对一的关系,而聚合是一对多的关系。需要明确的是:一个班级只有一个教授,因此这是一个组合关系,一个班级可以有多个学生,因此这是一个集合。

要将其转换为实际代码,Class对象(在学校中的类的意义上的类)可以有一个学生列表,而只有一个教授字段。这表明该班与学生的关系是一对多,但与教授的关系是1对1。

例如在代码中:

public class SchoolClass
{
    Professor mProfessor;
    List<Student> mStudents;
}
 类似资料:
  • 我知道聚合和组合之间的概念差异。有人能用实例告诉我它们之间在Java中的实现区别吗?

  • 因为聚合和组成是相关的关联,或者我们可以说它给出了对对象或其他任何东西之间关系的理解。 我发布这个问题是因为我在采访中问了一个问题,什么是组成和聚合。 所以根据我的理解,我给出了我的想法,如下所示。 http://www.coderanch.com/t/522414/java/java/Association-Aggregation-Composition 聚集、关联和组合 Java中的关联、聚合

  • 我有这样的Excel数据: 我想在ColumnA中找到Columnb中不存在的记录。

  • 问题内容: 这个问题已经在这里有了答案 : 11年前关闭。 组合和聚合之间有什么区别?有人可以给我这个OOAD的样品吗? 问题答案: 在这里找到 “聚合和组合都是特殊的关联。聚合用于表示所有权或整体/部分关系,而组合用于表示甚至更强的所有权形式。有了组合,我们得到部分与整体的重合寿命。从创建和销毁的角度出发,复合对象对其各个部分的布置负全责。 而且,合计末端的多样性不能超过一;即,它是不共享的。一

  • 我注意到以下代码在netbeans中是完全合法的: 然而eclipse对此并不满意,我必须这样初始化它: 有趣的是netbean建议不要在初始化部分指定类型参数,而是使用菱形运算符??我想知道这两种方法之间的区别。以及应该使用哪一种,这样代码就可以在不同的IDE中使用而不会有任何变化。

  • 本文向大家介绍成本差异和进度差异之间的差异,包括了成本差异和进度差异之间的差异的使用技巧和注意事项,需要的朋友参考一下 对于任何应用程序或专门用于任何项目,最关注的因素之一是在开发前和开发后阶段的预算管理和时间管理。因此,要评估任何项目的这两个主要因素,有很多方法,其中成本差异和进度差异是两个重要且主要的方法。 顾名思义,“成本差异”基于项目开发中花费的成本,而“进度差异”则基于相同开发中花费的时