ich habe eine abstrakte klasse, die von einigen anderen erweitert wird. einige initialisierungsaufgaben müssen im konstruktor der erweiternden klassen vorgenommen werden, anderes kann in der abstrakten klasse gemacht werden. nun ist es so, dass ich - auch wenn ich den code derzeit nur für mich schreibe - nicht will, dass man irrtümlich die initialiserungsmethode der abstrakten klasse nicht aufruft. folglich würde ich die initialisierung in den konstruktor packen. dann aber muss in der ersten zeile des konstruktors der erweiternden klassen ein super(...) stehen. und das will ich nicht, da ich zuvor vielleicht noch etwas anderes machen möchte.
wäre es das beste eine init(..)-methode zu verwenden, die ein init-flag auf true setzt und diesen in anderen methoden zu überprüfen? (somit könnte ich garantierten, dass die init methode aufgerufen wurde, aber ich will auch nicht in jede methode eine if(init==true) abfrage einbauen...)
also würdet ihr vielleicht doch nur in der JavaDoc darauf hinweisen, dass es die init-methode gibt und man sie aufrufen soll/muss/kann?
wäre es das beste eine init(..)-methode zu verwenden, die ein init-flag auf true setzt und diesen in anderen methoden zu überprüfen? (somit könnte ich garantierten, dass die init methode aufgerufen wurde, aber ich will auch nicht in jede methode eine if(init==true) abfrage einbauen...)
also würdet ihr vielleicht doch nur in der JavaDoc darauf hinweisen, dass es die init-methode gibt und man sie aufrufen soll/muss/kann?