Quote Originariamente inviata da el92 Visualizza il messaggio
ah ok quindi dipende dal fatto che ho dichiarato la classe come implemetazione di comparable<Blocco>..se ho capito bene..nel riscrivere i metodi(override) non è possibilile utilizzare come parametro una superclasse...questo è possibile solo nell'overload...giusto?
Se cambiano i parametri (tipi, quantità) è un overload (indipendentemente che sia tra due classi in relazione o nella stessa classe). Per un override i parametri devono essere gli stessi. Nota: gli stessi tenendo presente il concetto di "override equivalent" che considera anche la "subsignature".

Ovvero, questo:

codice:
class A {
    public void test(List<String> lista) { }
}

class B extends A {
    public void test(List lista) { }
}

è perfettamente lecito. test di B è un override sebbene il parametro non sia esattamente uguale. Perché test di B è uguale alla "erasure" di test di A.