Autor Beitrag
GURKE deluxe
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 91
Erhaltene Danke: 1

Win 7 Home Premium x64, Win XP Home Edition v2002
C# Microsoft Visual C# 2010 Express
BeitragVerfasst: Di 05.02.13 18:29 
Hallo,
Ich habe folgende Variable:
ausblenden C#-Quelltext
1:
2:
3:
4:
public Image iVorlageKreuzungMitAmpel
        {
            get { return _iVorlageKreuzungMitAmpel; }
        }


Diese ist nun nur lesbar. Wenn ich dort nun eine Set-Anweisung mit rein setze, so ist sie von überall beschreibbar. Dies ist allerdings unnötig. Die Variable soll nur in der Klasse beschrieben werden können, in der sie deklariert ist. Wenn ich nun folgendes versuche:
ausblenden C#-Quelltext
1:
2:
3:
4:
private Image iVorlageKreuzungMitAmpel
        {
            set { this._iVorlageKreuzungMitAmpel = value; }
        }


funktioniert das natürlich nicht, da ich zwei Klassen mit dem gleichen Namen benannt habe. Wie bekomme ich nun die Get-Prozedur öffentlich und die Set-Prozedur privat?

Nebenfrage: Was ist der Unterschied zwischen protected und private?

Gruß
Julian

EDIT:
Habs selbst herausgefunden :D
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
public Image iVorlageKreuzungMitAmpel
        {
            get { return this._iVorlageKreuzungMitAmpel; }
            private set { this._iVorlageKreuzungMitAmpel = value; }
        }