最全的 lombok 注解详情(随着版本不定时更新)

一、注解介绍

作用于类,生成一个参数为所有实例变量的构造方法

二、属性介绍

  • staticName:使生成的构造方法是私有的,默认值 “”
    并且生成一个参数为所有实例变量,返回类型为当前对象的静态方法,方法名为 staticName 值
  • onConstructor:列出的所有注解都放在生成的构造函数上
    JDK 7 之前的写法 onConstructor = @__({@AnnotationsGoHere}),JDK 8 之后的写法 onConstructor_ = {@AnnotationsGohere}
  • access:设置构造函数的访问修饰符,如果设置了 staticName,那么将设置静态方法的访问修饰符
    默认:PUBLIC,共有 PUBLIC、MODULE、PROTECTED、PACKAGE、PRIVATE、NONE
    其中 MODULE 是 Java 9 的新特性,NONE 表示不生成构造函数也不生成静态方法,即停用注解功能

三、实战演练

@AllArgsConstructor(staticName = "newInstancec", access = AccessLevel.PROTECTED, onConstructor_ = {@Deprecated})
public class Kiku {private String name;public static int age;@NonNullprivate String address;
}
编译后
public class Kiku {private String name;public static int age;@NonNull // 字段不允许为空private String address;@Deprecatedprivate Kiku(String name, @NonNull String address) {if (address == null)throw new NullPointerException("address is marked non-null but is null");this.name = name;this.address = address;}protected static Kiku newInstancec(String name, @NonNull String address) {return new Kiku(name, address);}
}

lombok 基础注解之 @AllArgsConstructor相关推荐

  1. lombok 基础注解之 @Builder

    最全的 lombok 注解详情(随着版本不定时更新) 一.注解介绍 @Builder 注解为类生成相对略微复杂的构建器 API 它作用于类,将其变成建造者模式 可以以链的形式调用 初始化实例对象生成的 ...

  2. lombok 基础注解之 @EqualsAndHashCode

    最全的 lombok 注解详情(随着版本不定时更新) 一.注解介绍 作用于类,覆盖默认的 equals 和 hashCode 二.属性介绍 exclude:通过该属性可以排除某些字段 of:通过该属性 ...

  3. lombok 基础注解之 @NonNull

    最全的 lombok 注解详情(随着版本不定时更新) 一.注解介绍 作用于成员变量和参数中,标识变量不能为空,否则抛出空指针异常 二.实战演练 @Setter @Getter public class ...

  4. lombok之@NoArgsConstructor、@AllArgsConstructor和@Data注解

    import lombok.Data; import lombok.AllArgsConstructor; import lombok.NoArgsConstructor;@Data @NoArgsC ...

  5. Lombok的注解简单介绍

    Lombok的注解简单介绍 背景   我们在开发过程中,通常都会定义大量的JavaBean,然后通过IDE去生成其属性的构造器.getter.setter.equals.hashcode.toStri ...

  6. 20190905 Lombok常用注解

    Lombok常用注解 val 用于声明类型,将从初始化表达式推断出类型,仅适用于局部变量和foreach循环,而不适用于字段.声明的局部变量为final变量. Java自带类型推断随着JDK版本提升越 ...

  7. springboot依赖lombok插件、lombok常用注解

    --springboot依赖lombok插件.lombok常用注解 1 lombok插件 1.1 lombok插件简介 官方介绍如下: 意思是:lombok是一个能自动插入到编辑器和构建工具的java ...

  8. Java基础 --- 注解 Annotation

    Java基础 --- 注解 Annotation Java注解 Java自带的标准注解 自定义注解 Java注解 Java注解它提供了一种安全的类似注释的机制,用来将任何的信息或元数据(metadat ...

  9. Spring基础专题——第十章(基础注解编程——下)

    目标,去年一年比较懒吧,所以今年我希望我的知识可以分享给正在奋斗中的互联网开发人员,以及未来想往架构师上走的道友们我们一起进步,从一个互联网职场小白到一个沪漂湿人,一路让我知道分享是一件多么重要的事情 ...

最新文章

  1. echarts横坐标文字太长显示不完的两种解决办法:rotate旋转文字、调用函数让文字纵向排列
  2. Hinton再挖新坑:改进胶囊网络,融合Transformer神经场等研究
  3. logback的使用和logback.xml详解
  4. Django之session
  5. C基础——目标代码文件、可执行文件和库
  6. Android(安卓)一个简单的聊天界面的实现(eclipse实现)
  7. 开发办公APP时间估算
  8. 一个人的Scrum之准备工作
  9. phalapi-进阶篇3(自动加载和拦截器)
  10. 基于Vue2.x的小米商城移动端项目
  11. 永恒之蓝漏洞紧急应对方案
  12. 偏序集、偏序关系和格
  13. FPGA中usb-blaster驱动的安装
  14. java duplicate key_Stream 操作 Duplicate key问题
  15. 电脑系统坏了怎么修复
  16. 小鸟云服务器怎么修改密码?
  17. 学python可以改善思维_论高中新课标下Python课程对学生计算思维的培养
  18. centos添加硬盘
  19. Problem K. Road Network - ACPC2015(求树的直径 dp)
  20. android马达测试,技术科普丨马达测试知多少?

热门文章

  1. 测鬼记(上)——回岗(十)
  2. Android的隐私沙盒,与iOS隐私政策有哪些不同?
  3. 2001-2022年全国各城市风速数据(逐日、逐月、逐年)
  4. 华为会用鸿蒙系统吗,华为P40会用鸿蒙系统是真的吗 华为p40上市时间介绍
  5. .*? 和 .*的区别
  6. 公司被告,晋升受阻,为刷考评互拆台...这届FB员工太难了
  7. 手机浏览器简单搜索ua标识
  8. 双十一有哪些电容笔值得入手?十大电容笔知名品牌
  9. C#基础(10)——飞行棋游戏
  10. 《用户行为画像》学习(1-4章)