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 {
}
Quando costruisco un'istanza di Child1, voglio che venga creato automaticamente un "peer" che sia anche di tipo Child1 e che sia archiviato nella proprietà peer. Allo stesso modo per Child2, con un peer di tipo Child2.Chiamare il costruttore della sottoclasse dalla classe astratta in Java
Il problema è, sull'assegnazione della proprietà peer nella classe padre. Non riesco a costruire una nuova classe figlio chiamando new Child1()
perché non funzionerebbe per Child2. Come posso fare questo? C'è una parola chiave che posso usare che farebbe riferimento alla classe bambino? Qualcosa come new self()
?
Sembra uno strano schema per me. Potrebbe essere meglio usare "ParentFactory" per istanziare questi oggetti? –
Questo è un design molto strano. Il pari del pari sarebbe l'oggetto originale, suppongo? – Thilo
Cosa diventa della _peer_? Intendo quale uso serve o qualsiasi ispirazione pratica per questo. – soufrk