註解類型 NoArgsConstructor


@Target(TYPE) @Retention(SOURCE) public @interface NoArgsConstructor
產生無參數建構子。如果由於 final 欄位的存在而無法撰寫此類建構子,則會產生錯誤訊息。

完整文件請見 Project Lombok 關於 @Constructor 功能的頁面

即使未列出,此註解也具有 onConstructor 參數。詳情請參閱完整文件。

注意:具有約束條件(例如 @NonNull)的欄位當然不會在 @NoArgsConstructor 建構子中進行檢查!

另請參閱
  • 巢狀類別摘要

    巢狀類別
    修飾詞與類型
    類別
    描述
    static @interface 
    已過時。
    永遠不要使用此註解 - 請閱讀文件。
  • 選用元素摘要

    選用元素
    修飾詞與類型
    選用元素
    描述
    設定建構子的存取層級。
    boolean
    如果為 true,則將所有 final 欄位初始化為 0 / null / false。
    此處列出的任何註解都會放在產生的建構子上。
    如果設定,產生的建構子將會是 private,並且會產生一個額外的 static 'constructor',其具有相同的引數列表,用於包裝實際的建構子。
  • 元素詳細資訊

    • staticName

      String staticName
      如果設定,產生的建構子將會是 private,並且會產生一個額外的 static 'constructor',其具有相同的引數列表,用於包裝實際的建構子。 這種 static 'constructor' 主要用於推斷類型引數。
      返回
      要產生的 static 'constructor' 方法名稱(空白 = 產生一般建構子)。
      預設
      ""
    • onConstructor

      此處列出的任何註解都會放在產生的建構子上。此功能的語法取決於 JDK 版本(我們對此無能為力;這是為了繞過 javac 的錯誤)。
      JDK 7 及更早版本
      @NoArgsConstructor(onConstructor=@__({@AnnotationsGoHere}))
      JDK 8 及更新版本
      @NoArgsConstructor(onConstructor_={@AnnotationsGohere}) // 請注意 onConstructor 後面的底線。
      返回
      要套用至產生建構子的註解列表。
      預設
      {}
    • access

      AccessLevel access
      設定建構子的存取層級。預設情況下,產生的建構子是 public
      返回
      建構子將會使用此存取修飾詞產生。
      預設
      PUBLIC
    • force

      boolean force
      如果為 true,則將所有 final 欄位初始化為 0 / null / false。否則,會發生編譯時期錯誤。
      返回
      若為 true,則強制產生無參數建構子,並在必要時選取預設值來指派必要的欄位。
      預設
      false