我有2个班级:
public abstract class Parent {
private AnyObject anyObject = createObject();
public abstract AnyObject createObject();
}
public class Child extends Parent {
public Child() {
System.out.println("Constructing child...");
}
@Override
public AnyObject createObject() {
System.out.println("Creating object...");
return new AnyObject();
}
}
构建孩子
Child c = new Child();
打印以下行:
Creating object...
Constructing child...
必须先构造一个对象,然后才能调用该方法。我知道父母必须在孩子面前建造,而我的父母是一个非常不寻常的例子。我需要在构造函数中设置一些将在createObject()中使用的字段。