Ich weiß, dass dies nicht auf diese Weise funktioniert, da der Konstruktor einer Klasse eine Lücke ist:Ist es möglich, ein Kind Klasse aus dem Konstruktor der übergeordneten Klasse zurück
class ParentClass
{
public ParentClass(int case)
{
if(case==1)
return new ChildClass1();
else
return new ChildClass2();
}
}
Gibt es eine Möglichkeit von Dies tun.
Nein, was Sie wollen, ist ein Factory-Methode anstelle eines Konstruktors. – MarcinJuraszek
Konstruktoren geben keine Werte zurück, also nein. Sie könnten eine Factory/statische Methode verwenden. –
Willkommen in der wunderbaren Welt der Designmuster. [Hier ist eine nützliche] (http://www.dofactory.com/net/design-patterns) Seite, die Rundowns und Beispiele von vielen von ihnen als Referenz enthält. –