我在我们的代码中看到了很多这种设计模式。您觉得合理吗?
interface A {
void doSmth();
}
interface B extends A {
}
class C implements A {
A a;
public C(A a) {
this.a = a;
}
@Override
public void doSmth() {
}
}
class D implements B {
A a;
public D() {
a = new C(this);
}
@Override
public void doSmth() {
a.doSmth();
}
}
最佳答案
这似乎是一种“组合”或“策略”模式。使用 IoC,您可以传递实际负责执行某些操作的类。
在不知道你的软件的用途和你的要求的情况下,很难给你答案,但无论如何,依赖这样的模式是一个很好的设计。
关于java - 过多的授权设计,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19926074/