Der Setter braucht keinen Wert zurückgeben. Der Setter soll nur die Nutzereingabe prüfen, feststellen ob diese in Ordnung ist und dann den Wert der Instanzvariable zuweisen. Mit dem Setter hast du jetzt eine Schreibmethode implementiert. Jetzt möchtest du den Wert einer Instanzvariable auch außerhalb nutzen. Du brauchst somit noch eine Lesemethode. Und diese Methode nennt man getter. Die getter Methode ist ebenfalls öffentlich. Das erkennst du wieder am Keyword public. C# - Der C# - Kürzel Getter und setter. (1);}} //getter zur Instanzvariable moebelGroesse public int getMoebelGroesse (){ return moebelGroesse;}} Die getter Methode hat als Rückgabetyp immer den Datentyp der Instanzvariablen. Schließlich soll sie den Wert lesen und diesen zurückgeben. Dann folgt der Name. Der Name folgt wieder einer Konvention und setzt sich aus dem Wort get und dem Namen der Instanzvariablen zusammen. Sie ist immer parameterlos, da sie nichts mit der Instanzvariable macht, außer sie zurückzugeben. Im Methodenrumpf stehen immer die Returnanweisung und die Variable, welche zurückgegeben wird.
Einzige Alternative wäre bei einem Zugriff auf die Collection jedes mal zu prüfen, ob die Collection noch null ist. Öhm... was spricht dagegen die Liste direkt beim deklarieren zu initialisieren? Warum Getter und Setter/Accessoren verwenden? - ViResist. Wozu brauchst du da zwangsweise nen Kontruktor? public class Foo {
private List
aber wenn ich es auf privat ist, kann ich nicht mehr zugreifen, die es in anderen Methoden. Informationsquelle Autor user962206 | 2012-01-15
zwingen parameter zu setzen) Zuletzt bearbeitet: 14. Dez 2010 #7 Zwingen hört sich so negativ an... fordern wäre besser... sinnvoll bei immutable objects. Gründe für die eine oder andere Variante: immutable objects, dependency injection, lazy initialisation, object pooling, java beans,... (siehe eben obigen Link) #8 Kann mir jemand sagen wie Ich hier im Quellecode eine Getter / Setter Methode einbaue public int getSitze(){ return sitze;} public void setSitze(int sitze){ = sitze;} und dann macht man aber überlicherweiße die Variablen Sichtbarkeit auf sonst kann ja jeder die getter/setter umgehen!.. Ich das ganze nutzen kann?? Wie du schon beschrieben hast, macht man das der Sichtbarkeitshalber. Setter und getter methoden. Der Vorteil ist, das die Nutzer deiner Klasse GEFORDERT ^^ werden deine "getter" und "setter" zu benutzen und du dort noch z. B. Fehlerbehandlungen vornehmen kannst. Beispiel: if (sitze == 1){ ("Dieser Wert ist hier nicht erlaubt");}else{ = sitze;}} #9 Zuletzt bearbeitet von einem Moderator: 14. Dez 2010 #10 Ich habe mir Java selbst in der Ausbildung beigebracht, und genau solche Sachen ließt man nicht!