Home » Programmazione » Java » Tutorial Java #5 : Il tipo Annotations @Override

Tutorial Java #5 : Il tipo Annotations @Override

Nei post precedenti abbiamo introdotto le Annotations di Java, e visto l’utilizzo della prima annotazione @Deprecated, adesso presenteremo un’altra interessante annotazione cioè l’Annotations @Override.

Come è noto un punto di forza di Java è dato dall’ereditarietà, per poterla ben gestire a volte risulta utile annotare l’override dei metodi.
Nel particolare la clausola @Override, anteposta ad un determinato elemento indica che il componente in oggetto sovrascrive  l’elemento genitore da cui eredita.

Supponiamo di avere due classi, la classe1 e classe2, nella classe1 si è implementato il metodo m1(). La classe2 eredità il suo comportamento di base dalla classe1, e per svariate ragioni vogliamo sovrascrivere il metodo m1(), magari utilizzando un algoritmo migliore.
Per gestire questa operazione senza commettere errori, anteponiamo nella classe2 al metodo m1 l’annotazione @Ovveride.

[sourcecode language=’java’]
class classe1{
void m1(){
System.out.println(“Metodo m1 della classe1”);
}
}

class classe1extends A{
@Override
void m1(){
System.mout.println(“Metodo m1 della classe2”);
}
}
[/sourcecode]

Compilando il codice non riceveremo alcun errore, ciò significa che il metodo m1() di classe2 sovrascrive correttamente il metodo m1 di classe1. Supponiamo invece di scrivere:

[sourcecode language=’java’]
class classe1extends A{
@Override
void m(){
System.mout.println(“Metodo m1 della classe2”);
}
}
[/sourcecode]

Effettuando la compilazione Java ci restituirà un errore dicendoci che il metodo m(), non è capace di sovrascrivere alcune metodo della classe madre.

Non utilizzando l’annotazione override, non avremmo ricevuto alcun errore, e non ci saremmo accorti dell’errore di sovrascrittura del metodo.

Lascia un commento