在 Lombok 中省略一个 Setter/Getter

问题描述 投票:0回答:2

我想在 Lombok 中使用数据类。由于它有大约十几个字段,我用

@Data
对其进行注释,以生成所有的 setter 和 getter。但是,有一个特殊字段我不希望实现访问器。

如何让 Lombok 省略此字段?

java lombok
2个回答
726
投票

您可以将访问级别传递给

@Getter
@Setter
注释。这对于使 getter 或 setter 受到保护或私有非常有用。它还可用于覆盖默认值。

使用

@Data
,默认情况下您可以公开访问访问器。您现在可以使用特殊访问级别
NONE
完全省略访问器,如下所示:

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

58
投票

根据@数据描述可以使用:

所有生成的 getter 和 setter 都将是公开的。要覆盖 访问级别,使用显式 @Setter 注释字段或类 和/或 @Getter 注释。您还可以使用此注释(通过 将其与 AccessLevel.NONE 结合起来)以抑制生成 getter 和/或设置器。

© www.soinside.com 2019 - 2024. All rights reserved.