Lombok 功能
Lombok javadoc 可用,但我們建議您參考這些頁面。
val
終於!輕鬆搞定 final 區域變數。
var
可變地!輕鬆搞定區域變數。
@NonNull
或:我如何學會不再擔心並愛上 NullPointerException。
@Cleanup
自動資源管理:安全地呼叫您的 close()
方法,輕鬆無憂。
@Getter/@Setter
不再需要寫 public int getFoo() {return foo;}
。
@ToString
無需啟動偵錯器來查看您的欄位:讓 lombok 為您產生 toString
吧!
@EqualsAndHashCode
輕鬆實現相等性:從物件欄位產生 hashCode
和 equals
實作。
@NoArgsConstructor, @RequiredArgsConstructor 和 @AllArgsConstructor
訂製建構子:產生不帶參數、每個 final / non-null 欄位一個參數,或每個欄位一個參數的建構子。
@Data
一次到位:@ToString
、@EqualsAndHashCode
、所有欄位的 @Getter
、所有 non-final 欄位的 @Setter
和 @RequiredArgsConstructor
的快捷方式!
@Value
輕鬆建立不可變類別。
@Builder
... 就這麼簡單:輕鬆建立物件的精美 API!
@SneakyThrows
大膽拋出 checked exceptions,前所未有!
@Synchronized
正確使用 synchronized
:不要暴露您的鎖。
@Locked
彈出並鎖定!ReentrantLock
,現在更輕鬆。
@With
不可變的 'setters' - 建立一個克隆但只更改一個欄位的方法。
@Getter(lazy=true)
懶惰是一種美德!
@Log
艦長日誌,星曆 24435.7:「那行是什麼來著?」
實驗性
前往實驗室:我們正在研究的新東西。
設定系統
Lombok,客製化打造:在一個地方為您的整個專案甚至您的工作區設定 lombok 功能。
執行 delombok
Delombok 會將您的原始碼檔案複製到另一個目錄,並將所有 lombok 註解替換為其反糖化形式。因此,它會將 @Getter 轉回實際的 getter。然後它會移除註解。這在各種情況下都很有用;您可以查看底層發生的事情,如果發生不可思議的事情並且您想停止使用 lombok,您可以輕鬆地移除原始碼中的所有痕跡,並且您可以使用 delombok 為原始碼層級工具(如 javadoc 和 GWT)預處理您的原始碼檔案。有關如何執行 delombok 的更多資訊,包括建構工具的說明,請參閱 delombok 頁面。