Wie kann ich eine generische abstrakte Klasse haben, sagen wir Animal, und sie eine Konstante implementieren lassen (oder eine Variable; es macht nichts), die von allen Unterklassen neu definiert werden muss?Wie kann ich Unterklassen zwingen, eine Konstante in Java neu zu definieren?
Beispiel:
abstract class Animal {
private static int venerableAge;
}
Und Kraft Dog
um so etwas wie
class Dog extends Animal {
private static int venerableAge = 10;
}
definiert werden Ich möchte nicht verschiedene Unterklassen der Lage sein, lesen noch schreiben jeweils anderen Wert . Nur der eine von ihnen.
Das heißt, jede Klasse muss ihre eigene statische "Instanz" der Variablen haben. Und niemand wird auf die Eltern zugreifen.
Ist das in Java möglich?
Ich mag die Antwort, aber die Methode ist jetzt öffentlich, und ich möchte den Wert von niemandem außer der eigenen Klasse gelesen werden. (Trotzdem möchte ich es zwingen). Ich habe meine Frage etwas bearbeitet, um Verwirrung zu vermeiden. – ssice
Sie können die Methode anstelle von public schützen, sodass andere Klassen nicht darauf zugreifen können. – MBCook
Ich meine, Unterklassen weder. – ssice