Ich habe eine abstrakte Klasse, wo ich letzte Variablen deklarieren möchten. in der Konstrukteurs meiner UnterklassenWie Konstanten/Abschluss Variablen in der abstrakten Oberklassen definieren, sondern sie in der Unterklasse zuordnen?
Ich möchte jedoch nur die Werte dieser Variablen zugewiesen werden soll.
Offenbar ist dies nicht möglich, weil alle „final Felder initialisiert werden müssen“. Ich verstehe nicht warum, denn es ist sowieso nicht möglich, eine abstrakte Klasse zu instantiieren.
Was Ich mag würde, ist so etwas haben:
abstract class BaseClass {
protected final int a;
}
class SubClass extends BaseClass {
public SubClass() {
a = 6;
}
}
ich etwas Ähnliches wie Methoden vorstellen, wenn Sie eine Schnittstelle implementieren. Dann sind Sie auch gezwungen, die Methoden in der (Unter-) Klasse zu implementieren.
Wie man "a" in einer konkreten Unterklasse einstellt, während es "final" bleibt. – Jack
wenn Sie setzen ein als endgültig, warum Sie eine übergeordnete Klasse müssen sie enthalten? Sie können es nicht einfach in der Unterklasse definieren? – Gianmarco