一个扩展母类的子类,它在其构造函数中调用子类中实例化的模板方法,因为它需要在子构造函数中获得一个值。
我怎么能做这样的事情,而不改变我的父构造函数(Foo,在这里。我不能在真正的 Foo 类中做任何改变):
public abstract class Foo{
public Foo(){
register();
}
public abstract void register();
public void aMethod(int aValue){
// body
}
}
public class Bar extends Foo{
public Foo(int aValue){
// body
}
register(){
aMethod(aValue);
}
}
在这里,即使我将 aValue 放在一个字段中,aValue 也不会在
aMethod(aValue);.
我该如何解决我的问题?
我正在寻找任何模式,ULM,解决方案。