对于电脑游戏,玩家在游戏过程中获得的奖励是:
入门级:n分灯中级:魔法垫m分高级:可以装灯或垫子的宝箱
这里我们应用复合模式
客户:电脑游戏
我相信组件是级别(入门,中级和高级) 复合:奖励叶子:灯,魔术垫,胸部操作:getPoints(),fillChest()
这些是正确的吗?
组合通常是对象的树/集合。您可以对单个对象执行的相同操作也可以在集合上执行。此外,对象通常可以是独立的或包含更多对象,并且对包含对象的操作将在包含的对象上执行。
因此,如果这就是您计划使用 Composite 对象的方式,那么是的,这听起来是正确的。
我同意布雷迪的观点。一切都取决于您计划如何使用您的复合对象。我将复合设计模式用于 RPG 属性系统。您需要做的就是创建不同的属性并为每个属性分配一个 Attribute 实例。之后,就是通过已经创建的方法为其添加和删除奖金。