Annotations

The idea behind Annotations

Defining annotation types

Runtime annotation checks via reflection

Built-in annotations

Compile time processing using annotation processor

Repeating Annotations

Inherited Annotations

Getting Annotation values at run-time

Annotations for this and receiver parameters

Add multiple annotation values