Design patterns 设计模式:组合与组合
我正在完成一门关于设计模式的课程,在复习笔记的时候,我发现了我在这学期错过的一些东西:复合型与组合型。我设法理解的是,复合是当一个对象实际封装整个对象时,而复合是当它只保存指向它们的指针时Design patterns 设计模式:组合与组合,design-patterns,composite,composition,Design Patterns,Composite,Composition,我正在完成一门关于设计模式的课程,在复习笔记的时候,我发现了我在这学期错过的一些东西:复合型与组合型。我设法理解的是,复合是当一个对象实际封装整个对象时,而复合是当它只保存指向它们的指针时 是这样吗?有人能给我解释一下吗 什么时候我会喜欢一个而不是另一个 这是一个设计概念(不是真正的模式)。当您想要描述一个对象包含另一个对象时,使用此术语。这在讨论中经常发生 此外,组合意味着强大的所有权。一个对象拥有(即管理另一个对象的生命周期)。当父对象被销毁时,所有子对象也将被销毁。如果没有这样牢固的关系(
JPanel
可以保存各种控件,如文本字段、标签、列表等。但它也可以保存其他JPanel
s,而这些控件又可以包含简单的组件和更多嵌套的面板
通常,复合设计模式使用组合,但在某些情况下,父级不必拥有所有子级。要继续GUI示例,您可以将一个面板移到另一个位置(更改父面板)。+1解释这两个面板,但OP似乎还需要关于包含和只是指针问题的帮助。@MattFenwick:对,我添加了一些说明和引用(也关于聚合)。@baruch:我的荣幸。那么你参加了设计模式课程,却不知道是谁?:-)@baruch:GoF指的是《规范设计模式》一书的作者(Gamma,Helm,Johnson,Vlissides)。嗨@TomaszNurkiewicz我知道这本书很古老,但这是金子。。。谢谢你的解释,不管怎样,我对
设计概念
有疑问,其他可用的设计概念是什么?我试着用谷歌到处搜索,找不到。谢谢