Annotations, a form of metadata, provide data about a program that is not part of the program itself. Annotations have no direct effect on the operation of the code they annotate.
Annotations have a number of uses, among them:
• Information for the compiler—Annotations can be used by the compiler to detect errors or suppress warnings.
• Compile-time and deployment-time processing—Software tools can process annotation information to generate code, XML files, and so forth.
• Runtime processing—Some annotations are available to be examined at runtime.
This chapter explains where annotations can be used, how to apply annotations, what predefined annotation types are available in the Java SE Application Programming Interface ...