@Override فقط به کامپایلر جاوا اعلام می کند که این متد Override شده است، در اینصورت اگر واقعا متد ذکر شده Override نشده باشد، منجر به خطای کامپایل می شود و از خطاهای احتمالی زمان اجرا جلوگیری می شود، البته IDE ها هم از این annotation استفاده کرده وحتی قبل از آغاز کامپایل اشتباه بوجود آمده را به شما گوشزد می کنند.
کلا بودن این annotation برروی متدهای Override شده کار خوبی است، فرض شما یک متد را Override کرده اید و در طول زمان signature متد پدر تغییر می کند، با گذاشتن @Override برروی متد جدید کامپایلر با اعلام خطا (بدلیل وجود نداشتن متد در کلاس یا interface پدر ) این تغییر را به شما اطلاع رسانی می کند.