Entwickler-Ecke

C# - Die Sprache - Ein Objekt mit parameterlosem Konstruktor initialisieren


relapse - Do 22.03.12 16:22
Titel: Ein Objekt mit parameterlosem Konstruktor initialisieren
Wie kann ich ein Objekt initialisieren, dessen Klasse nur einen parameterlosen Konstruktor haben darf, muss aber Daten von außen holen?



Danke!


Th69 - Do 22.03.12 17:07

Hallo relapse,

was genau meinst du mit "Daten von außen holen"?
Und warum darf die Klasse nur einen parameterlosen Konstruktor haben? Meinst du zur Serialisierung?


relapse - Do 22.03.12 17:51

Zitat:
was genau meinst du mit "Daten von außen holen"?

Ich meinte einen Konstruktor mit Parametern, den ich nicht verwenden kann. Warum? Weil es sich um ein ActiveX-Control handelt und es nur einen Standardkonstruktor hat.

Ich hab's aber mit static gelöst:


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
public class KlasseOhneKonstruktor{
    public static double SollBreite;
    private double _zielBreite;
    public double Breite { get { return _zielBreite; } }
    //  im Konstruktor:
    public KlasseOhneKonstruktor(){
      _zielBreite = SollBreite;}
}
//////////////////////////////////////////////////////////////
    class Program
    {
        static void Main(string[] args)
        {
            KlasseOhneKonstruktor.SollBreite = 50.0;
            var kok = new KlasseOhneKonstruktor();
            var breite = kok.Breite;  // 50
        }
    }


ujr - Fr 23.03.12 10:58

user profile iconrelapse hat folgendes geschrieben Zum zitierten Posting springen:
Ich hab's aber mit static gelöst:


Was heißt "gelöst"? Was ist denn das eigentliche Problem? Mit anderen Worten: was ist Deine Ausgangssituation und was willst Du tun?

"static" ist wohl kaum eine Lösung. Evtl. schau mal nach "Klassen initialisieren" (http://msdn.microsoft.com/de-de/library/bb397680.aspx).