2011-11-03 66 views
80

我想在龍目島使用一個數據類。由於它有大約十幾個字段,我用@Data註解它以便生成所有的setter和getter。但是有一個特殊領域我不希望訪問者被實現。在龍目島省略一個二傳手/吸氣者

Lombok如何忽略此字段?

回答

162

您可以將訪問級別傳遞給@Getter@Setter註釋。這對於使獲取者或設置者受到保護或私有很有用。它也可以用來覆蓋默認值。

使用@Data,默認情況下,您可以公開訪問訪問器。現在,您可以使用特殊的訪問級別NONE完全省略訪問,就像這樣:

@Getter(AccessLevel.NONE) 
@Setter(AccessLevel.NONE) 
private int mySecret; 
+0

完美。如果專用字段是POJO並且也使用@Delegate()進行了註釋,那麼它可用於將一組屬性提取到單獨的可重用類中。這可能對應用於多個類的屬性具有相同的屬性(用於添加屬性的mixin類型)。例如,一個mixin代表一組可用於各種XML元素建模的屬性。 – xorcus

20

根據@Data description你可以使用:

所有產生的getter和setter方法將被公開。要覆蓋 訪問級別,請使用明確的@Setter 和/或@Getter批註對字段或類進行批註。您也可以使用此註釋(通過將 與AccessLevel.NONE相結合)來禁止生成一個吸氣器 和/或setter。