Entwickler-Ecke
C# - Die Sprache - warum get und set?
BRN - Do 20.09.07 08:08
Titel: warum get und set?
hallo leute,
ich bin neueinsteiger und werde euch wahrscheinlich in zukunft öfters mit fragen löchern.
hier meine erste:
in meinem c#-grundlagenbuch werden die variablen in den klassen als private deklariert und anschließend mit get und set "veröffentlicht". was soll das? warum deklariere ich die variablen nicht gleich als public?
danke!
gruß
brn
jasocul - Do 20.09.07 08:14
get und set kann mehr als nur die Eigenschaften mit Werten zu belegen. Oft ist es erforderlich dort noch Aufbereitungen und Plausibilitätsprüfungen einzubauen. Daher sollte man sich gleich an de Stil gewöhnen. Würde man die Eigenschaften im public definieren, so könnte man das get und set umgehen, was vom Entwickler normalerweise nicht erwünscht ist.
BRN - Do 20.09.07 08:45
ok, habs verstanden.
danke!
gruß
brn
Delete - Do 10.12.09 16:26
Ich muss dieses Thema nochmal aufgreifen....
Seit kurzem beschäftige ich mich mit der Programmiersprache C#, vorher habe ich mit Java oder C++ programmiert.
Durch den früheren Programmiersprachen kenne ich für private Attribute die get/set Methoden. In C# werden nun get/set Eigenschaften gelegt. Ihr habt ja schon erklärt das ich so bestimmte Eigenschaften noch weiter festlegen kann, also nicht nur die Wertzuweisung. Konnte ich aber mit meinen get/set Methoden von Java/C++ eigentlich auch ohhne große Probleme .... gibts noch weitere Vorteile dieser Eigenschaftsthematik?
r2c2 - Do 10.12.09 22:00
Properties sind "nur" syntactic sugar. Man kann mit ihnen nicht mehr machen, als mit Getter-/Settermethoden. Ich vermisse sie in Java, C++ & Co aber trotzdem immer. Sie machen den Code nämlich lesbarer und Lesbarkeit halte ich für sehr wichtig...
mfg
Christian
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!