Hallo liebe Community,
folgendes Code-Stück irritiert mich.
Auch wenn ich in der Klasse A bin, wieso kann ich per Punkt-Operator auf die Instanzvariable wert von Obj zugreifen, nach dem Obj es zu A gecastet wurde? Es handelt sich doch dabei um eine private Instanzvariable und ich dachte Instanzvariablen sind dann auch nur für die jeweilige Instanz sichtbar. Sprich auch wenn die Methode in der KlasseA definiert ist, dachte ich bislang das ich trotzdem einen getter bräuchte um mir den Wert von b zu holen.
Also sowas this.b == ((A) obj).gibWertVonB; Oder spielt das keine Rolle wenn ich in der selben Klasse bin?
Über hilfe freue ich mich
!
folgendes Code-Stück irritiert mich.
Java:
public class A {
private int wert;
public boolean equals(Object obj) {
return this.wert == ((A) obj).wert;
}
}
Auch wenn ich in der Klasse A bin, wieso kann ich per Punkt-Operator auf die Instanzvariable wert von Obj zugreifen, nach dem Obj es zu A gecastet wurde? Es handelt sich doch dabei um eine private Instanzvariable und ich dachte Instanzvariablen sind dann auch nur für die jeweilige Instanz sichtbar. Sprich auch wenn die Methode in der KlasseA definiert ist, dachte ich bislang das ich trotzdem einen getter bräuchte um mir den Wert von b zu holen.
Also sowas this.b == ((A) obj).gibWertVonB; Oder spielt das keine Rolle wenn ich in der selben Klasse bin?
Über hilfe freue ich mich
Zuletzt bearbeitet: