Zugriff auf einen privaten Konstruktor von außerhalb der Klasse in C#C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Zugriff auf einen privaten Konstruktor von außerhalb der Klasse in C#

Post by Anonymous »

Wenn ich eine Klasse mit einem privaten Standardkonstruktor und einem öffentlichen Konstruktor mit Parametern definiere, wie kann ich auf den privaten Konstruktor zugreifen? < /p>

Code: Select all

public class Bob
{
public String Surname { get; set; }

private Bob()
{ }

public Bob(string surname)
{
Surname = surname;
}
}
< /code>
Ich kann über eine statische Methode in der Klasse wie folgt auf den privaten Konstruktor zugreifen: < /p>
public static Bob GetBob()
{
return new Bob();
}
Ich dachte, ich könnte über eine Erweiterungsmethode auf den privaten Konstruktor zugreifen, da (nach meinem Verständnis) Erweiterungsmethoden so übersetzt werden, dass sie zu sein scheinen statische Methoden in der Klasse, aber ich kann nicht:
static class Fred
{
public static Bob Bobby(this Bob bob)
{
return new Bob();
}
}
< /code>
Wie kann ich also auf den privaten Konstruktor zugreifen? bearbeiten: < /h1>
Der Grund, warum ich dies tun wollte ein Objekt falsch instanziieren. Ich teste es, also weiß ich (ich hoffe!) Unter welchen Umständen die Tests scheitern werden. Ich bin im Moment immer noch ein Test -N00B Die Art und Weise, wie ein Verbraucher dieser Klasse, d. H. Wenn die öffentlichen Methoden aufgerufen werden und wenn die öffentlichen Methoden in Ordnung sind, gehen davon aus, dass die privaten Methoden in Ordnung sind. Ich würde immer noch lieber die privaten Methoden testen, aber mein Chef atmet mir bei einem Lieferablen nach dem Hals ein:-(

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post