Hiho,
ich habe mir das Checkstyle Plugin für Eclipse installiert. Checkstyle prüft den Code auf Konventionen und Coding Standards. Alleine schon, um mich daran zu erinnern, meinen eigenen Kram immer schön brav Du dokumentieren, ist das Plugin fein (aber auch anstrengend - wer dokumentiert schon jede Variable *g*).
Es sei folgender Code gegeben:
bei der Methode moniert Checkstyle folgendes:
Mir ist nicht so ganz klar, warum sie so nicht für Vererbung geeignet ist.
Im Fall von Final kann sie von einem erbenden eben nicht überschrieben werden.
Im Fall von abstract wäre die Methode halt nicht ausformuliert. Wobei dann doch die gesamte Klasse abstract sein müsste, oder nicht?
Warum ist aber die Methode besser für Vererbung geeignet, wenn sie leer ist?
Wenn ich z.B. einen BusinessController habe, dann würde ich die Methode "final" deklarieren. Geht von Euch tatsächlich jemand so vor, dass er solche Methoden alle als final deklariert?
ich habe mir das Checkstyle Plugin für Eclipse installiert. Checkstyle prüft den Code auf Konventionen und Coding Standards. Alleine schon, um mich daran zu erinnern, meinen eigenen Kram immer schön brav Du dokumentieren, ist das Plugin fein (aber auch anstrengend - wer dokumentiert schon jede Variable *g*).
Es sei folgender Code gegeben:
Code:
public class Foo {
public String getHelloWorld() {
return "Hello World";
}
}
bei der Methode moniert Checkstyle folgendes:
Code:
Design For Extension: Die Methode 'getHelloWorld' ist nicht für Vererbung entworfen -
muss abstract, final oder leer sein.
Mir ist nicht so ganz klar, warum sie so nicht für Vererbung geeignet ist.
Im Fall von Final kann sie von einem erbenden eben nicht überschrieben werden.
Im Fall von abstract wäre die Methode halt nicht ausformuliert. Wobei dann doch die gesamte Klasse abstract sein müsste, oder nicht?
Warum ist aber die Methode besser für Vererbung geeignet, wenn sie leer ist?
Wenn ich z.B. einen BusinessController habe, dann würde ich die Methode "final" deklarieren. Geht von Euch tatsächlich jemand so vor, dass er solche Methoden alle als final deklariert?