ist eine Frage, über Stil Codierung und Empfehlungen:Setzen Sie einen super() -Aufruf an den Anfang Ihrer Konstruktoren? Diese
Wie in den Antworten auf die Frage unnecessary to put super() in constructor?, wenn Sie einen Konstruktor für eine Klasse schreiben, die angeblich den Standard verwenden (ohne Argumente) Konstruktor von der Super, können Sie super()
am Anfang Ihres Konstruktor aufrufen:
public MyClass(int parm){
super(); // leaving this out makes no difference
// do stuff...
}
aber Sie können den Anruf auch weglassen; Der Compiler wird sich in beiden Fällen so verhalten, als ob der Aufruf von super() da wäre.
Also, haben Sie den Aufruf in Ihre Konstruktoren oder nicht?
Auf der einen Seite könnte man argumentieren, dass die Einbeziehung der super()
die Dinge deutlicher macht. OTOH, ich mag es nicht, redundanten Code zu schreiben, also tendiere ich dazu, es auszulassen; Ich sehe es jedoch regelmäßig im Code von anderen.
Was sind Ihre Erfahrungen? Hattest du Probleme mit dem einen oder anderen Ansatz? Haben Sie Kodierungsrichtlinien, die einen Ansatz vorschreiben?
BTW: Eine weitere Frage (nur als Referenz):
Is there a reason to explicitly code a default constructor when there are no other constructors?
Ich nicht, aber möglicherweise weil fast der ganze Code, den ich gelesen habe (und von gelernt habe) nicht. Ich könnte einfach den schlechten Stil verewigen, den ich gelernt habe. –