So sagte mein Dozent etwas entlang der Linien von:Welche Wartungsprobleme mit geschützten Variablen in Java verbunden sind
Deklarieren von Variablen wie setzt sie alle Subklassen geschützt, kann ein Wartungsprobleme verursachen, beste Variablen zu erklären, wie private (auch in Vererbungsbeziehungen) und schreiben Getter und Setter Methoden, um den Zugriff auf Variablen bereitzustellen.
Aber er erklärte nicht, was die Wartungsprobleme waren. Welche Probleme gibt es, wenn Unterklassen auf Variablen zugreifen können?
Im ziemlich neu in Java, so dass eine vereinfachte Erklärung wäre hilfreicher
"Wenn ... Sie sich entscheiden, diese Variable zu entfernen oder sie umzubenennen oder ihren Typ zu ändern" Aber das ist auch ein Problem mit Gettern: Sie können diese Dinge auch nicht mit Methoden machen. –
(Ich kann hier "Typ" falsch lesen - ich vermute, Sie könnten "Darstellung" bedeuten) –
@AndyTurner Das stimmt, aber Sie könnten die interne Implementierung von Methoden ändern, die die Instanzvariablen verwenden, ohne Code zu brechen, der diese Methoden aufruft. Beispielsweise kann eine Getter-Methode den Wert einer privaten Instanzvariable zurückgeben, und später können Sie entscheiden, dass die Variable eliminiert werden kann. Die Getter-Methode gibt dann einen Wert zurück, der auf anderen Variablen basiert. – Eran