@Accessors 注解详解

2年前 (2022) 程序员胖胖胖虎阿
157 0 0
  •   前言
  • 1. @Accessors 源码
  • 2. @Accessors 属性详解
  • 2.1 fluent 属性
  • 2.2 chain 属性
  • 2.3 prefix 属性

前言

在你的工作中,有时候可能会看到 @Accessors(chain = true)  这样的注解,他是 lombok 插件包中的一个注解,那么它是什么意思呢?

@Accessors 注解详解

1. @Accessors 源码

我们打开 @Accessors 的源码可以看到:

(1)该注解主要作用是:当属性字段在生成 getter 和 setter 方法时,做一些相关的设置。

(2)当它可作用于类上时,修饰类中所有字段,当作用于具体字段时,只对该字段有效。

@Accessors 注解详解

该字段共有三个属性,分别是 fluent,chain,prefix,下面我们分别来说明下,他的意思分别是什么?

2. @Accessors 属性说明

2.1 fluent 属性

不写默认为false,当该值为 true 时,对应字段的 getter 方法前面就没有 get,setter 方法就不会有 set。

@Accessors 注解详解

2.2 chain 属性

不写默认为false,当该值为 true 时,对应字段的 setter 方法调用后,会返回当前对象。

@Accessors 注解详解

2.3 prefix 属性

该属性是一个字符串数组,当该数组有值时,表示忽略字段中对应的前缀,生成对应的 getter 和 setter 方法。

比如现在有 xxName 字段和 yyAge 字段,xx 和 yy 分别是 name 字段和 age 字段的前缀。

那么,我们在生成的 getter 和 setter 方法如下,它也是带有 xx 和 yy 前缀的。

@Accessors 注解详解

如果,我们把它的前缀加到 @Accessors 的属性值中,则可以像没有前缀那样,去调用字段的 getter和 setter 方法。

@Accessors 注解详解

 

 

 

版权声明:程序员胖胖胖虎阿 发表于 2022年11月9日 上午5:41。
转载请注明:@Accessors 注解详解 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...