meine Basisklasse hat nur einen parameterlosen Konstruktor.
Meine abgeleitete Klasse hat nur einen Konstruktor mit einem Parameter.
Kann ich irgendwie verhindern, dass der parameterlose Konstruktor der Basisklasse geladen wird ? Dort werden Sachen gemacht, die ich für mein Projet nicht brauche. Für ein anderes Projekt ist aber der parameterlose Konstruktor der Basisklasse zwingend notwendig !
meine Basisklasse hat nur einen parameterlosen Konstruktor.
Meine abgeleitete Klasse hat nur einen Konstruktor mit einem
Parameter.
Zu gütig, dass der neugierige Leser auch dieses Mal keinen Code
zu sehen bekommt :->
Kann ich irgendwie verhindern, dass der parameterlose
Konstruktor der Basisklasse geladen wird ? Dort werden Sachen
gemacht, die ich für mein Projet nicht brauche. Für ein
anderes Projekt ist aber der parameterlose Konstruktor der
Basisklasse zwingend notwendig !
Umgekehrt gefragt: warum bekommt die Zielklasse die gewünschte Funktionalität nicht implementiert ?
meine Basisklasse hat nur einen parameterlosen Konstruktor.
Meine abgeleitete Klasse hat nur einen Konstruktor mit einem
Parameter.
Soweit so gut.
Kann ich irgendwie verhindern, dass der parameterlose
Konstruktor der Basisklasse geladen wird ?
Nein! Der Compiler fügt bei abgeleiteten Klassen automatisch ein super() ein. Es sei denn, du gibts explizit einen super()-Aufruf an.
Dort werden Sachen
gemacht, die ich für mein Projet nicht brauche. Für ein
anderes Projekt ist aber der parameterlose Konstruktor der
Basisklasse zwingend notwendig !
Fragt sich dann, ob das die geeignete Basisklasse ist.
Evtl. könntest du einen weitern Konstruktor in die Basisklasse einfügen, allerdings mit einem Parameter. Diesen kannst du dann aus deiner abgeleiteten Klasse explizit aufrufen.
Ist aber IMHO nicht sauber.