关联、聚合(Aggregation)以及组合(Composition)的区别
涉及到UML中的一些概念:关联是表示两个类的一般性联系,比如“学生”和“老师”就是一种关联关系;聚合表示has-a的关系,是一种相对松散的关系,聚合类不需要对被聚合类负责,用空的菱形表示聚合关系
从实现的角度讲,聚合可以表示为:
class A {…} class B { A* a; …..}
而组合表示contains-a的关系,关联性强于聚合:组合类与被组合类有相同的生命周期,组合类要对被组合类负责,采用实心的菱形表示组合关系
实现的形式是:
class A{…} class B{ A a; …}
从实现的角度讲,聚合可以表示为:
class A {…} class B { A* a; …..}
而组合表示contains-a的关系,关联性强于聚合:组合类与被组合类有相同的生命周期,组合类要对被组合类负责,采用实心的菱形表示组合关系
实现的形式是:
class A{…} class B{ A a; …}
【关联、聚合(Aggregation)以及组合(Composition)的区别】相关文章
1. 关联、聚合(Aggregation)以及组合(Composition)的区别
4. 软件测试LoadRunner面试题:What is the difference between Overlay graph and Correlate graph?
5. 软件测试LoadRunner面试题:What is correlation? Explain the difference between automatic correlation and manu
6. Struts&Spring&Hibernate面试总结
7. 介绍一下内联、左联、右联
8. const char*, char const*, char*const的区别是什么
9. Java的for语句中break, continue和return的区别
10. IMPORT的选项IGNORE有什么作用?缺省是什么设置?
本文来源:https://www.mianshiwenti.com/a13082.html
进入下载页面
﹝关联、聚合(Aggregation)以及组合(Composition)的区别﹞相关内容
- IMPORT的选项IGNORE有什么作用? 缺省是什么设置?
- 软件测试LoadRunner面试题: Where do you set automatic correlation options?
- 什么是Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议
- 简述 Application,session,cookie,cache,viewState 的概念,以及相互之间的区别
- delegate与普通函数的区别
- 描述RIP和OSPF区别以及特点
- 若通过ObjectOutputStream向一个文件中多次以追加方式写入object,为什么用ObjectInputStream读取这些object时会产生StreamCorruptedExcepti
- What\'s the difference between deep copy and shallow copy? (深拷贝与浅拷贝有什么区别)
- Collection和Collections的区别
- shallow copy和deep copy的区别