@Override creates a compile-time check when the method is overridden. This is very useful to make sure you don't have a dumb signature problem when trying to override
This not only does the compiler check, but also documents the intent of the developer.
if you override a method but donβt use it anywhere of the type itself, someone entering the code later may know the purpose. Annotations explain her purpose.
A good IDE will effectively mark any method that overrides the method without @Override , so a combination of the two will ensure that you do what you are trying to do.
it also improves readability
source share