An annotation type is a Java interface.
All annotation types are subinterfaces of the java.lang.annotation.Annotation interface.
It has one method, annotation Type, that returns an java.lang.Class object.
java.lang.Class extends Annotation> annotationType()
In addition, any implementation of Annotation will override the equals, hashCode, and
toString methods from the java.lang.Object class.