Kürzlich stieß man auf ein interessantes Feature, das jedoch zu einer unerwarteten Ausgabe von Eclipse "add unimplemented methods" führen kann. Was ist der "googl-fähige" Name des Sprachkonzepts hinter dieser "gelegentlichen impliziten Implementierung"?java accidential implizite Schnittstellenimplementierung
würde ich nicht erwarten, dass der folgende Code zu kompilieren, aber es tat und arbeitet
interface CallmeIfc {
public void callme();
}
class CallmeCode {
public void callme() {
// implementation
}
}
class CallmeImpl extends CallmeCode implements CallmeIfc {
// empty class body
}
public static void main(String[] args) {
CallmeIfc me = (CallmeIfc) new CallmeImpl();
me.callme(); // calls CallmeCode.callme()
}
Um ... Vererbung? Virtuelle Funktionstabellen? – OrangeDog
Ihr 'CallMeImpl' implementiert' public void callme() 'durch Übernahme von' CallMeCode'. Das ist alles, es gibt keinen speziellen Namen dafür. –
@Joonas Pulakka - Ich habe den Namen dafür, "Subcontracting", Impl ist genau wie eine Agentur, dient einem Kunden (Schnittstelle) von einem Auftragnehmer (Super-Klasse) ohne sie sich kennen zu lassen :) – bobah