可以為註解中的元素定義預設值。不需要為帶有預設值的注解元素提供值。
預設值可以使用以下一般語法定義:
<modifiers> @interface <annotation type name> {
<data-type> <element-name>() default <default-value>;
}
關鍵字default
指定預設值。預設值必須是與元素的資料型別相容的型別。
以下程式碼通過將minor
元素的預設值指定為0
,來建立Version
注釋型別,如下所示:
public @interface Version {
int major();
int minor() default 0; // zero as default value for minor
}
以下程式碼顯示註解如何使用預設值。
@Version(major=1) // minor is zero, which is its default value
@Version(major=2, minor=1) // minor is 1, which is the specified value
以下程式碼顯示如何為陣列和其他資料型別指定預設值:
public @interface Version {
double d() default 1.89;
int num() default 1;
int[] x() default { 1, 2 };
String s() default "Hello";
String[] s2() default { "abc", "xyz" };
Class c() default Exception.class;
Class[] c2() default { Exception.class, java.io.IOException.class };
}