R
rattosch
Gast
Hallo,
angenommen ich habe als Attribut
dann bedeutet das doch, dass ich den Variablenwert nicht ändern kann. Da es sich hier um eine Referenzvariable handelt, dürfte also der Referenzwert nicht verändert werden können. Dieser ist doch defaultmässig null. Das würde doch bedeuten das ich die null Referenz nicht mehr ändern kann, oder?
Warum funktioniert es aber wenn ich einen Konstruktor schreibe ala
In diesem Fall ändere ich doch den Wert bzw. die Referenz der als final deklarierten Variable. Was ja eigentlich nicht gehen dürfte, da das Attribut ja schon mit null belegt ist. Bin momentan etwas verwirrt. Evtl. kann mir jemand die Frage beantworten.
angenommen ich habe als Attribut
Java:
private final String name;
dann bedeutet das doch, dass ich den Variablenwert nicht ändern kann. Da es sich hier um eine Referenzvariable handelt, dürfte also der Referenzwert nicht verändert werden können. Dieser ist doch defaultmässig null. Das würde doch bedeuten das ich die null Referenz nicht mehr ändern kann, oder?
Warum funktioniert es aber wenn ich einen Konstruktor schreibe ala
Java:
public Test(String name) { this.name = name; }
In diesem Fall ändere ich doch den Wert bzw. die Referenz der als final deklarierten Variable. Was ja eigentlich nicht gehen dürfte, da das Attribut ja schon mit null belegt ist. Bin momentan etwas verwirrt. Evtl. kann mir jemand die Frage beantworten.