Heim >Java >javaLernprogramm >Erben Java-Unterklassen private Felder?
Erben Unterklassen private Felder: Ein Java-Rätsel
In Java ist das Konzept der Vererbung oft einfach. Das Thema private Felder in Unterklassen bringt jedoch einige Unklarheiten mit sich.
Frage:
Erben Unterklassen private Felder von ihren übergeordneten Klassen?
Erste Antwort:
Basierend auf der „normalen OOP-Methode“ von Bei objektorientierter Programmierung wäre die Antwort „Nein“. Auf private Felder kann normalerweise nicht von Unterklassen zugegriffen werden.
Java-Dokumentation:
In der Java Language Specification (JLS) heißt es: „Mitglieder einer Klasse, die als privat deklariert sind, werden nicht vererbt.“ durch Unterklassen dieser Klasse.“
Interviewer Argument:
Trotz des JLS-Zitats könnten einige argumentieren, dass private Felder von Unterklassen geerbt werden, wenn auch indirekt. Sie behaupten, dass diese Felder innerhalb von Unterklassenobjekten existieren und durch Reflexion oder auf andere Weise zugänglich sind.
Argumente zur Unterstützung des Interviewers:
Klarstellung von JLS:
Der Hauptunterschied besteht hier zwischen der Vererbung für Objekte und Vererbung für Klassen.
Schlussfolgerung:
Während Objekte von Unterklassen private Felder von ihren Elternklassen erben, tun dies die Unterklassen selbst nicht. Diese Unterscheidung zwischen Vererbung auf Objektebene und Vererbung auf Klassenebene ist für das Verständnis des Vererbungsmodells von Java von entscheidender Bedeutung. Trotz der Argumentation des Interviewers bietet das JLS eine eindeutige Definition zu diesem Thema.
Das obige ist der detaillierte Inhalt vonErben Java-Unterklassen private Felder?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!