在Java设计中,组合不再使用了很多?

时间:2014-03-23 14:06:44

标签: java inheritance aggregation composition

Java开发人员(在复杂的高性能环境中拥有丰富的经验)最近评论说"组合不再使用了很多。" 我对此感到惊讶评论。这是真的吗?

一方面,该论坛上的其他答案表明,组合和聚合之间的差异可能是模棱两可的(整个存在的部分是否存在;部分是否存在于包含对象的整个生命周期中?)。但也许在所有这些情况下,问题就在于 - 如何将行为添加到现有的类或类层次结构中。

他评论的背景是讨论继承的可能替代方案。如果这个开发人员是正确的,那么在工作实践中取代了什么?通过添加的界面进行混合?

欢迎任何观点!

1 个答案:

答案 0 :(得分:1)

如果有的话,由于像Spring这样的依赖注入框架,它现在可能比以往任何时候都要使用了。我所知道的所有Java开发人员使用的模型是通过接口和目的构建在功能上更多相互关联的类,并根据特定配置使用Spring注入它们(除了通过仅替换整个安全框架的能力)更改弹簧配置文件并添加一些新的JAR文件。)