我认为不需要仿制药.您可以在抽象类中声明clone()方法,并覆盖它以返回子类中的子类.
package inheritance;
public abstract class AbstractEntity {
public abstract AbstractEntity clone();
}
package inheritance;
public class ClassA extends AbstractEntity {
@Override
public ClassA clone() { return null; }
}
package inheritance;
public class Driver {
/**
* @param args
*/
public static void main(String[] args) {
ClassA a = new ClassA();
ClassA b = a.clone();
System.out.println("all done");
}
}
这不是你想做的吗?