// 自定义注解
@interface NewAnnotation {
// 为自定义注解添加变量
String value();
}
// 定义一个枚举类型,然后将参数设置为该枚举类型,并赋予默认值
@interface Greeting {
public enum FontColor {
BLUE, RED, GREEN
};
String name();
FontColor fontColor() default FontColor.RED;
}
public class AnnotationTest {
// 使用自定义的注解类型
@NewAnnotation("mainmethod")
public static void main(String[] args) {
saying();
sayHelloWithDefaultFontColor();
sayHelloWithRedFontColor();
}
@NewAnnotation(value = "saymethod")
public static void saying() {
}
// 此时的fontColor为默认的RED
@Greeting(name="defaultfontcolor")
public static void sayHelloWithDefaultFontColor() {
}
// 将fontColor改为BLUE
@Greeting(name="notdefault", fontColor=Greeting.FontColor.BLUE)
public static void sayHelloWithRedFontColor() {
}
}