我正在开发一个用Java编写的小游戏(但问题与语言无关)。因为我想探索各种设计模式,所以挂断了Compositepattern/Entity系统(我最初阅读了关于here和here的内容)作为典型的深度层次继承的替代方案。现在,写了几千行代码后,我有点糊涂了。我认为理解模式并且我喜欢使用它。我认为它非常酷而且有点像星巴克,但感觉它提供的好处有点短暂,而且(最让我恼火的是)在很大程度上取决于您的粒度。这是上面第二篇文章中的图片:我喜欢对象(游戏实体,或任何你想调用它们的东西)具有最小组件集的方式,推断的想法是你可以编写如下代码:BaseEntityAlien=newBaseEntity(