AHH*_*AHH 1 java dependency-injection
在类的注入构造函数中,我必须使用适当的参数调用超级构造函数。super 应该通过多态调用子类的方法(我有来自同一个父类的多个子类实现相同的方法)。问题是子类中的方法依赖于已经注入的成员变量。在我的例子中,子类依赖于不同类型的多个变量。此外,父类是某些库中的本地类,我无法更改。请参阅以下示例性的、非常简化的代码:
public class A {
@Inject
public A(SomeType t)
{
workon(t1);
}
}
public class B extends A{
@Inject
private MemberType mt;
@Inject
public B(SomeType t)
{
super(t)
}
public void workOn(SomeType t)
{
// mt is not set yet since this method
// is called from the super constructor!
mt.setT(t);
}
}
Run Code Online (Sandbox Code Playgroud)
除了手动初始化之外,有没有办法在调用继承的方法之前注入成员变量?