@Target: indicates where the annotation can be used, the possible ElementType parameters:
CONSTRUCTOR: Declaration of the constructor
local_variable: local variable declaration
Method: Methods Declaration
Package: Packet declaration PARAMETER: parameter declaration
Type: class, interface (including annotation type) or enum declaration
@Retention: indicates the level at which the annotation information needs to be saved. The optional retentionpolicy parameters include:
SOURCE: Annotations are discarded by the compiler
Class: Annotations are available in the class file, but are discarded by the VM
RUNTIME:VM will retain annotations during the run, so the information of the annotations can be read through the reflection mechanism. Common
@Document: include annotations in Javadoc
@Inherited: allow subclasses to inherit annotations from parent class
Attention:
Annotations can be set to initial values and can be implemented using default.
When annotations have only one element, the element name must be value, and "alue=" can be omitted when the annotation is used.
The value of the annotation must be deterministic, and null should not be used as a value.
The possible types of annotations: all basic types, String, Class, enum, Annotation, and the array form of the above types.
Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.
customizing annotation definitions and using