// Example 16.25 (Figure 16.5) import static java.lang.System.out; import java.lang.annotation.*; @Retention(RetentionPolicy.RUNTIME) @interface Documentation{ String author(); String date(); double revision(); String docString(); } @Documentation( author = "Michael Scott", date = "July, 2015", revision = 0.1, docString = "Illustrates the use of annotations" ) public class Annotate { public static void main(String[] args) { Class c = Annotate.class; Documentation a = c.getAnnotation(Documentation.class); out.println("author: " + a.author()); out.println("date: " + a.date()); out.println("revision: " + a.revision()); out.println("docString: " + a.docString()); } }