public abstract class Parent {
private Parent peer;
public Parent() {
peer = new ??????("to call overloaded constructor");
}
public Parent(String someString) {
}
}
public class Child1 extends parent {
}
public class Child2 extends parent {
}
當我構建Child1的實例,我希望有一個「同行」自動構建它的類型是Child1還,並存儲在同行財產。對於Child2,同樣是Child2類型的對等。呼叫從抽象類子類構造函數在Java中
的問題是,在父類中對財產的分配。我無法通過調用new Child1()
因爲那將不是CHILD2工作構建一個新的子類。我怎樣才能做到這一點?有沒有一個關鍵字可以用來引用子類?像new self()
?
似乎是一個奇怪的圖案給我。使用「ParentFactory」來實例化這些對象可能會更好嗎? – 2009-05-21 08:09:45
這是一個非常奇怪的設計。我想,同行的同伴會是原始的對象嗎? – Thilo 2009-05-21 08:23:48
_peer_變成了什麼?我的意思是它的用途是什麼,或者有什麼實際的啓發。 – soufrk 2016-07-01 09:35:43