Bluej Problem beim deklarieren?

Bild von dem Problem - (Computer, programmieren, Informatik)

1 Antwort

du versuchst, pFarbe zuzuweisen - aber es gibt kein pFarbe ... weder in den Objektattributen, noch als Parameter der Methode.

ersetz mal die gelb hinterlegte Farbe hiermit:

this.farbe = farbe;

ayyyyl 
Fragesteller
 24.02.2019, 22:58

Ok Danke es zeigt jetzt keinen Fehler mehr an. Nur verwirrt es mich trotzdem ein bisschen, weil wir das in der Schule nicht so gemacht haben. Gibt es vllt noch eine andere Lösung?

0
xxxcyberxxx  24.02.2019, 23:03
@ayyyyl

dann hast du in der Schule nicht ganz so aufgepasst und etwas ein bisschen anders übernommen. Daher gibt es mit deinem gegebenen Code keine andere Lösung.

An sich ist es so:

Du hast unter den Objektattributen festgelegt, dass es eine Integer-Variable mit dem namen "farbe" gibt.

Jetzt hast du auch einen Konstruktor erstellt, welcher 3 Integer und einen double entgegennimmt - in genau dieser Reihenfolge.

Den dritten Integer hast DU jetzt hier "farbe" genannt - so wird dieser im Konstruktor selbst adressiert.

Dein Problem: Auch das Objektattribut heißt "farbe". Um diesem dann den entsprechenden Wert zuzuweisen, musst du noch festlegen, dass das Attribut des momentanen Objekts angesprochen wird - dies machst du mit dem Schlüsselwort "this."

Wenn du Variablen umgenennen kannst, kannst du im Konstruktor von Quadrat einfach "int pFarbe" statt "int farbe" nehmen - dadurch gibt es auch keine Kollision und du kannst einfach

farbe = pFarbe;

schreiben

1
ayyyyl 
Fragesteller
 24.02.2019, 23:10

Danke nochmals ich denke verstehe es jetzt

0