我遇到了一段代码,其中@Getter
用于枚举声明,我想知道是否有可能对枚举声明使用@Getter
,以及它有什么用途?
据我所知,@Getter
在成员变量上生成getter方法。我是不是遗漏了什么?
是否也可以用@Getter
对类进行注释?
发布于 2019-02-06 10:33:29
如果您检查参考文献,您可以看到:
您还可以在类上添加一个@Getter和/或@Setter注释。在这种情况下,就像用注释对该类中的所有非静态字段进行注释一样。
这意味着当您将@Getter
放在Class/Enum级别时,它将为该类/Enum上的所有非静态成员生成getters
,就好像您重复为所有这些成员放置@Getter
一样。
示例:
为了举例说明这一点,这两种代码是等价的:
代码1:
@Getter
public enum MyEnum {
private int member1;
private int member2;
}
代码2:
public enum MyEnum {
@Getter
private int member1;
@Getter
private int member2;
}
在这里,将为两个成员生成getter
方法。
发布于 2019-02-06 10:30:17
如果使用Getter注释,则常量并不重要。但是对于您创建的所有其他变量,存在一个getter方法:
@Getter
public enum Test {
TEST;
private int variable;
}
因此,在本例中,您只获得了变量的getter方法。
发布于 2019-02-06 10:21:35
我们可以用@Getter和/或@Setter注释任何字段,让lombok自动生成默认的getter/setter。请参考这里获取更多细节。
https://stackoverflow.com/questions/54551114
复制相似问题