C'est une indication pour le compilateur pour laisser savoir que vous êtes à la substitution de la méthode d'une classe parent (ou l'interface en Java 6).
Si le compilateur détecte qu'il n'y a pas de fonction pour remplacer, il vous avertira (ou une erreur).
C'est extrêmement utile pour identifier rapidement les erreurs typographiques ou de modifications de l'API. Disons que vous essayez de remplacer votre parent méthode de la classe harvest()
mais il sort harvset()
, votre programme en silence à l'appel de la classe de base, et sans @Override
, vous n'avez aucun avertissement à ce sujet.
De même, si vous utilisez une bibliothèque, et dans la version 2 de la bibliothèque, harvest()
a été modifié pour prendre un paramètre entier, vous ne pouvez plus l'ignorer. Encore une fois, @Override
serait de vous parler rapidement.