Get- und Set-Methoden funktionieren nicht, wo liegt der (Denk-)fehler?

...komplette Frage anzeigen

3 Antworten

Die get Methode braucht kein Argument, und bei der set Methode muss einfach gewicht=pGewicht benutzt werden (zumindest kenne ich die Schreibweise set gewicht() so nicht).

LOLLAND97 22.02.2017, 21:24

Hatte im Kopf noch abgespeichert, dass bei Methoden immer vor dem Semikolon noch "()" vorkommt. Wie gesagt, haben lange nicht mehr implementiert, da es die letzten Themen nicht gefordert haben.

Danke dir! ;)

0

Das Problem bei deiner set-Methode liegt daran, dass das, was du im Rumpf hast, totaler Unsinn ist. :D Was soll die set denn machen? Sie soll das Gewicht auf den in den Klammern übergebenen Wert ändern. Also schreibst du da enfach das rein, was du im Konstruktor schon geschrieben hast, nur mit der Änderung, dass du "this.gewicht = pGewich;" benutzen musst.

Warum hast du denn im Rumpf deines Setter "gewicht()" geschrieben? die Klammern sind auch in deiner Get-Methode falsch, denn "gewicht" ist keine Funktion, sondern eine Variable, oder?


LOLLAND97 22.02.2017, 21:25

siehe oben unter dem anderen Beitrag :)

0

Also...das Klassendiagramm ist nicht gut und unvollständig, aber mal davon abgesehen:

dein Konstruktor ist falsch: Falls ein nicht Standardkonstruktor gefragt ist (nicht ersichtlich im Klassendiagramm), dann sollte dieser einen Parameter besitzen:

public Container(int gewicht){ this.gewicht = gewicht; }

der Methodenkopf deiner setter Methode ist korrekt, aber Inhalt ist falsch. Was soll set gewicht() für eine Anweisung sein?? Der Inhalt sollte von der Logik her die gleiche sein, wie in deinem Konstruktor.

Deine getter Methode ist wiederrum völlig falsch. Eine getter Methode verlangt immer einen Rückgabetyp. Ein Parameter ist ebenfalls unüblich. Die Methode muss wie folgt aussehen:

public int getGewicht() { return this.gewicht; }

So in etwas wäre es korrekt. Viel Spaß weiterhin.

Was möchtest Du wissen?