Lombok Builder构造器默认值失效
1.16.*
及以下版本:@Data
默认会生成private
的无参构造函数,Builder
默认值不生效,但是new的对象默认值生效
1.18.*
及以上版本:@Data
默认不会生成无参构造函数,Builder
默认值生效,但是new的对象默认值不生效
public class Test {
public static void main(String[] args) throws Exception {
User user = User.builder().build();
System.out.println("name: " + user.getName());
System.out.println("age: " + user.getAge());
System.out.println("isVip: " + user.isVip());
}
@Data
@Builder
static class User {
private String name = "Joe.Ye";
private int age = 20;
private boolean isVip = true;
}
}
运行结果:
name: null
age: 0
isVip: false
版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/25/lombok-builder-constructor-default-value-invalid/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
打赏
海报
Lombok Builder构造器默认值失效
1.16.*及以下版本:@Data默认会生成private的无参构造函数,Builder默认值不生效,但是new的对象默认值生效
1.18.*及以上版本:@Data默认不会生成无参构造函……
文章目录
关闭
共有 0 条评论