Java註解預設值


可以為註解中的元素定義預設值。不需要為帶有預設值的注解元素提供值。
預設值可以使用以下一般語法定義:

<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 };
}