در زبان برنامه نویسی جاوا، Annotation نوعی metadata (فراداده یا توضیح درباره اطلاعات) درباره برنامه است و قسمتی از برنامه حساب نمی شود و هیچ اثر مستقیمی در عملکرد کد ندارد. کاربرد های Annotation عبارتند از:
- فراهم کردن اطلاعات برای کامپایلر: توسط کامپایلر برای یافتن خطاها یا اعلام warning ها استفاده می شوند.
@Override
void mySuperMethod() { ... }
- پردازش رمان کامپایل (Compile-time) یا زمان deploy: کتابخانه ها و ابزار ها از اطلاعات Annotation ها برای ایجاد کد، فایل های XML و ... استفاده می کنند.
- پردازش زمان اجرا (runtime): بعضی از Annotation ها برای چک کردن در زمان اجرا کاربرد دارند.