java – 太高耦合或可以这样设计?

前端之家收集整理的这篇文章主要介绍了java – 太高耦合或可以这样设计?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

假设我有一个classA,它有自己的方法,有自己的私有字段和你有什么(基本上遵循封装标准).然后我有classB,它需要执行最终状态(通过classA的一个方法获得,这有点打破了封装)的classA.然后我们有classC,再次需要classB的最终状态.依旧等等,让我们对classM说.是否认为耦合度太高?

编辑:好吧,假设我正在设计Loot系统,这取决于是否根据敌人的失败发生掉落(每个敌人有不同的掉落几率).如果敌人被击败,那么处理战斗物的类会掷骰子,无论它是否掉落,然后我需要将该状态传播给处理战利品分配的其他类.如果有掉落,则类处理战利品执行战利品生成并分配给玩家,如果没有,则无效.

最终的执行将是这样的:

classA a = new classA;
...  //classA does its stuff
classB b = new classB(a.getFinalState());
... // again class does its stuff based on outcome of A
classC c = new classC(b.getFinalState());

等等.

最佳答案
编辑:您可以通过遵循Delegation Pattern及其兄弟Decorator Pattern来实现您的目标

正如已经建议的那样,Builder Pattern是一种有效的替代方案.它总是取决于您的原始设计的目标.

猜你在找的Java相关文章