C
C_A
Gast
Hallo,
ich mache offensichlich einen Gedankenfehler. Es geht um die Sichtbarkeit private. Ich habe bei Head-first "Java" gelesen: "private Member werden nicht geerbt": S. 180, 1. Auflage, 3. Nachdruck.
Es ist doch offensichtlich möglich, eine Klasse zu deklarieren, die in etwas so aussieht:
Hieraus erstelle ich eine Unterklasse:
Die Testklasse wirft problemlos aus:
Die Erfahrung zeigt, dass private Instanzvariablen vererbt werden. Dennoch scheue ich mich, den Text von head-first als "unrichtig" zu deklarieren, sondern gehe erstmal davon aus, dass ich einen Fehler mache. Aber wo?
ich mache offensichlich einen Gedankenfehler. Es geht um die Sichtbarkeit private. Ich habe bei Head-first "Java" gelesen: "private Member werden nicht geerbt": S. 180, 1. Auflage, 3. Nachdruck.
Es ist doch offensichtlich möglich, eine Klasse zu deklarieren, die in etwas so aussieht:
Java:
public class Mensch
{
private String vorname;
// ...
public String getVorname()
{
return vorname;
}
}
Hieraus erstelle ich eine Unterklasse:
Java:
public class Student extends Mensch
{
// ...
}
Die Testklasse wirft problemlos aus:
Java:
public class Test
{
// ....
public static void main[String[] args]
{
Student studi = new Student();
System.out.println(studi.getVorname());
}
}
Die Erfahrung zeigt, dass private Instanzvariablen vererbt werden. Dennoch scheue ich mich, den Text von head-first als "unrichtig" zu deklarieren, sondern gehe erstmal davon aus, dass ich einen Fehler mache. Aber wo?