Class base () -Konstruktor und übergeben dieses

Ich versuche, gute Entwurfsmuster für ein Programm zu implementieren, das ich schreibe. Ich habe eine Klassenstruktur wie diese.

abstract class SomeBase
{
     public SomeObject obj { get; protected set; } 

     protected SomeBase(SomeObject x)
     {
           obj = x;
     }

     //Other methods and fields...
}

public class SomeDerived : SomeBase
{

     public SomeDerived() : base(new SomeObject(this))
     {

     }

}

Nun, wie ich Ihnen jetzt sicher bin, können Sie dies nicht in einem Konstruktor übergeben, da das Objekt nicht initialisiert wurde. Aber ich hatte wirklich gehofft, dass es einen Workaround gibt. Es ist für mich keine bewährte Methode, SomeDerived () die Einstellung eines Basisklassenfelds zu ermöglichen. Ich würde dieses neue Objekt gerne weitergeben.

Irgendwelche Ideen

Antworten auf die Frage(2)

Ihre Antwort auf die Frage