Is ArrayList an aggregation or composition?

后端 未结 2 664
时光说笑
时光说笑 2021-01-27 04:18

I am preparing for my programming exam and came across this question, I know that in aggregation the object is borrowed, and in composition the object is owned. Is the answer co

相关标签:
2条回答
  • 2021-01-27 04:56

    From here:

    Simple rules:

    1. A "owns" B = Composition : B has no meaning or purpose in the system without A
    2. A "uses" B = Aggregation : B exists independently (conceptually) from A

    Therefore, it really depends on your model. Can the elements in the list, exist without the list. Does the elements have to be put into the list to be meaningful?

    In the case of ArrayList<Point>, I think it is an aggregation.

    0 讨论(0)
  • 2021-01-27 04:57

    Since Point has a real existence outside of the array, it's an aggregation.

    https://www.visual-paradigm.com/guide/uml-unified-modeling-language/uml-aggregation-vs-composition/

    as stated:

    Aggregation implies a relationship where the child can exist independently of the parent. Example: Class (parent) and Student (child). Delete the Class and the Students still exist.

    Composition implies a relationship where the child cannot exist independent of the parent. Example: House (parent) and Room (child). Rooms don't exist separate to a House.

    0 讨论(0)
提交回复
热议问题