Mehrere Klassenattribute initialisieren

TobiTobske
Mausschubser
Mausschubser
Beiträge: 58
Registriert: 15. Jan 2014 20:50

Mehrere Klassenattribute initialisieren

Beitrag von TobiTobske »

Hallo, ich habe bei folgendem Thema ein Problem:
Ich habe eine Klasse mit drei Attributen x,y,z vom Typ double, denen ich gleichzeitig einen Wert zuorden möchte.

In dem Quiz wird das auf diese Weise gemacht:

Code: Alles auswählen

public double x,y,z;
x=y=z=0;
Gebe ich das so nun in BlueJ ein, erhalte ich einen Syntaxfehler mit der Meldung: "<identifier> expected".
Schreibe ich das nun so:

Code: Alles auswählen

public double x,y,z = 0;
erhalte ich keinen Syntaxfehler mehr, aber laut dem Quiz ist das falsch.

Was ist denn nun richtig?
Würde mich freuen, wenn das jemand aufklären könnte, nicht dass es bei mir schon an so simplen Dingen in der Klausur scheitert ...

Gast
Gast

Re: Mehrere Klassenattribute initialisieren

Beitrag von Gast »

Nur weil der Kompiler sich nicht beschwert, heißt das nicht das dies das richtige macht.... schonmal versucht x,y zu verwenden?

double x, y, z = 0;

=> x, y uninizialisiert und NUR z ist mit 0 initialisiert.

mfg

TobiTobske
Mausschubser
Mausschubser
Beiträge: 58
Registriert: 15. Jan 2014 20:50

Re: Mehrere Klassenattribute initialisieren

Beitrag von TobiTobske »

Stimmt, das habe ich mir auch schon gedacht. Also geht das so auch nicht.

Aber wie weise ich denn jetzt den selben Wert allen drei Attributen auf einmal zu?

Osterlaus
BSc Spammer
BSc Spammer
Beiträge: 1263
Registriert: 23. Aug 2007 12:46
Wohnort: DA

Re: Mehrere Klassenattribute initialisieren

Beitrag von Osterlaus »

Wie wäre es mit folgendem:

Code: Alles auswählen

public double a=42;
public double b=a;
public double c=a;

TobiTobske
Mausschubser
Mausschubser
Beiträge: 58
Registriert: 15. Jan 2014 20:50

Re: Mehrere Klassenattribute initialisieren

Beitrag von TobiTobske »

Ja, dass das so geht, ist mir klar :D .
Mich hat nur die Lösung aus dem Quiz verwirrt, weil das so anscheinend nicht funktioniert.

Dann müsste das jemand aber bitte korrigieren und eine richtige Lösung hochladen!

Antworten

Zurück zu „Archiv“