accessors 作用_@Accessors介绍配置getter和setter
前言
今天在看GitHub某大神写的代码的时候看到一个标签并没有使用过,所有百度了一下使用方法在此记录一下。
@Accessors
Accessor的中文含义是存取器,@Accessors用于配置getter和setter方法的生成结果。
源代码:
@Target({ElementType.TYPE, ElementType.FIELD})
@Retention(RetentionPolicy.SOURCE)
public @interface Accessors {
/**
* If true, accessors will be named after the field and not include a {@code get} or {@code set}
* prefix. If true and {@code chain} is omitted, {@code chain} defaults to {@code true}.
* default: false
*
* @return Whether or not to make fluent methods (named {@code fieldName()}, not for example {@code setFieldName}).
*/
boolean fluent() default false;
/**
* If true, setters return {@code this} instead of {@code void}.
* default: false, unless {@code fluent=true}, then default: true
*
* @return Whether or not setters should return themselves (chaining) or {@code void} (no chaining).
*/
boolean chain() default false;
/**
* If present, only fields with any of the stated prefixes are given the getter/setter treatment.
* Note that a prefix only counts if the next character is NOT a lowercase character or the last
* letter of the prefix is not a letter (for instance an underscore). If multiple fields
* all turn into the same name when the prefix is stripped, an error will be generated.
*
* @return If you are in the habit of prefixing your fields (for example, you name them {@code fFieldName}, specify such prefixes here).
*/
String[] prefix() default {};
}
此注解可以使用在方法上还有类上。
可以看到一共有3个属性,下面单独记录一下各个属性区别。
chain
chain的中文含义是链式的,设置为true,则setter方法返回当前对象.
fluent
fluent的时候:getter和setter方法的方法名都是基础属性名,且setter方法返回当前对象。生成的方法没有get/set名字。
prefix
生成getter和setter方法的字段名会忽视指定前缀。可以看到生产的方法中没有job这个前缀了。
accessors 作用_@Accessors介绍配置getter和setter相关推荐
- accessors 作用_lombok @Accessors用法详解(一看就能就懂)
最近看到代码里面有@Accessors注解,看了一些文章没理解,这个一看就能懂: @Accessors(chain=true) 链式访问,该注解设置chain=true,生成setter方法返回thi ...
- 深度学习与计算机视觉系列(1)_基础介绍
转载自: 深度学习与计算机视觉系列(1)_基础介绍 - 龙心尘 - 博客频道 - CSDN.NET http://blog.csdn.net/longxinchen_ml/article/detail ...
- serialversionuid的作用_为什么阿里Java规约要求谨慎修改serialVersionUID字段
serialVersionUID简要介绍 serialVersionUID是在Java序列化.反序列化对象时起作用的一个字段.Java的序列化机制是通过判断类的serialVersionUID来验证版 ...
- Linux DMA Engine framework(2)_功能介绍及解接口分析
转载.蜗窝科技,www.wowotech.net. Linux DMA Engine framework(2)_功能介绍及解接口分析 作者:wowo 发布于:2017-5-2 22:47 分类:Lin ...
- android getter不起作用,java - 如何在Android Studio中自动生成getter和setter
java - 如何在Android Studio中自动生成getter和setter Android Studio中是否有一个快捷方式可以自动生成给定类中的getter和setter? 14个解决方案 ...
- Maven工作笔记003---公司只允许代理上网_给maven配置代理下载jar包
技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 公司只允许代理上网_给maven配置代理_下载jar包啊 配置很简单: 找到maven的setti ...
- 浅谈计算机教学论文,浅谈计算机在教学中的作用_优秀论文
<浅谈计算机在教学中的作用_优秀论文>由会员分享,可在线阅读,更多相关<浅谈计算机在教学中的作用_优秀论文(5页珍藏版)>请在人人文库网上搜索. 1.浅谈计算机在教学中的作用论 ...
- 我的世界服务器修改nbt,我的世界NBT教程 关于NBT作用与内容介绍
我的世界NBT教程 关于NBT作用与内容介绍.那今天游戏园小编给大家分享的是我的世界中NBT的作用以及内容的介绍,感兴趣的玩家不妨进来看看有关我的世界NBT的介绍吧! 几乎所有物体,包括所有实体/方块 ...
- java里getter和setter的作用和区别是什么?
java是典型的面向对象的编程语言,面向对象三个特性,继承性,多态性,封装性,主要和封装性考虑,类里面的变量不想设置成公共的类型,但是还要给外部使用在这种实用场景下,从编程技巧上加上方法来获取或者设置 ...
最新文章
- C#双面打印解决方法(打印word\excel\图片)
- docker Rails Permission denied @ dir_s_mkdir
- Android中自定义Dialog外形,去除黑底和白色边框
- 双向滚动scrollview
- 如何安装rpm包?掌握rpm包管理工具就够了
- web嵌入到原生的app里需要注意的事项
- mongodb 时间戳 java_Java将日期类型Date时间戳转换为MongoDB的时间类型数据
- 这篇Redis文章,图灵看了都说好
- 《交互式程序设计 第2版》一3.6 关系比较
- 小手拍拍机器人_幼儿园互动儿歌游戏,小朋友瞬间变听话!
- How to Simulate the Price Order or Price Line Function using API QP_PREQ_PUB.PRICE_REQUEST Includes
- 格力电器详解举报奥克斯 巨头互撕为哪般?
- CVE-2021-21871: PowerISO 内存越界写漏洞
- 又是AI+IoT!谷歌试图收购物联网公司Xively
- 201521123026《Java程序设计》第2周学习总结
- [AppScan深入浅出]修复漏洞:会话标识未更新
- 数学分析 隐函数定理及其应用(第18章)
- 消费贷之京东白条、蚂蚁花呗和银行信用卡的那些分期“低费率”套路
- [POI2012] 约会 Rendezvous
- 为了以后小孩的成长,留在大城市好还是回到老家三线城市好? 从一线城市滚回二线三线城市的筒子们,你们重新找到新的生活经历了多久? 年轻人逃离一线城市 外地人生存环境愈发严峻...
热门文章
- feignclient对象找不到_领导同事争相介绍对象,相亲N次,我找不到一条结婚的理由...
- flow hive 新型蜂箱_全新Flow Hive 2使得养蜂人获取蜂蜜更轻松
- 反解析Navicat ncx加密后的密码(并导入到dbeaver)
- 使用Docker搭建LAMP环境,上线wordpress
- C语言封顶,我们的大屋顶|阳光方舟2.0--C-HOUSE正式封顶
- java8与hibernate_如何在JPA和Hibernate中使用Java 8 LocalDateTime
- 玩转 SpringBoot 2 快速整合 | RESTful Api 篇
- hql连接查询及外置命名查询
- 基于id3算法根据房价数据进行画图预测python
- 【题解】luoguP2680运输计划