Analizziamo errori comuni in Java legati a ereditarietà e sovraccarico dei metodi: chiamata del costruttore della classe base tramite super(...), limitazioni di classi final e metodi final, violazione del principio di Liskov, trappole del sovraccarico (autoconversione dei tipi, chiamate ambigue, tentativi di distinguere solo per tipo di ritorno), oltre a best practice ed esempi funzionanti con il polimorfismo.