lombok中@builder注解的用法

在 Lombok 中,@Builder 注解用于简化构建器模式的使用。使用 @Builder 注解后,Lombok 会自动生成一个构建器类,用于创建带有多个属性的对象。

使用 @Builder 注解时,需要注意以下几点:

在要使用 @Builder 注解的类上添加 @Builder 注解。

需要使用 @Builder.Default 注解来指定属性的默认值。

构建器类会自动生成一个无参构造方法,通过该方法创建对象。

生成的构建器类会包含属性的 setter 方法,可以链式调用。

下面是一个使用 @Builder 注解的示例:

c 复制代码
import lombok.Builder;
import lombok.Getter;

@Getter
@Builder
public class Person {
    private String name;
    private int age;
    @Builder.Default
    private String gender = "unknown";
}

// 使用示例
Person person = Person.builder()
        .name("John")
        .age(25)
        .build();

在上面的示例中,@Builder.Default 注解用于设置 gender 属性的默认值为 "unknown"。然后,我们可以使用生成的构建器类 Person.builder() 创建 Person 对象,并通过链式调用的方式设置属性的值。最后,使用 build() 方法创建最终的对象。

使用 @Builder 注解可以简化创建带有多个属性的对象的过程,避免了手动编写构建器的繁琐代码。

相关推荐
神仙别闹10 小时前
基于 Java GUI 贪心策略直接搜索算法和极大极小博弈树算法的智能人机博弈五子棋游戏
java·毕业设计·gui·贪心策略·极大极小博弈树
羑悻的小杀马特11 小时前
Redis持久化三剑客:RDB二进制快照、AOF文本日志、混合模式如何守护你的数据安全?
数据库·redis·缓存·aof·持久化存储·rdb
Flynn Liang11 小时前
RAG 评估体系:黄金集、检索指标与 LLM-as-Judge 落地
java·langchain·rag·评估·langchain4j·检索指标
小呆爱发呆11 小时前
第三章 MySQL 库表操作
数据库·mysql·adb
SomeOtherTime11 小时前
Rust生命周期介绍(AI回答)
开发语言·后端·rust
程序猿打工仔11 小时前
计算机基础(C语言)考编、专技岗
c语言·开发语言·算法
喵本喵叁肆12 小时前
Rényi 差分隐私:把隐私损失看成一族矩(英文原题:Rényi Differential Privacy (CSF 2017))
开发语言·r语言
时间的拾荒人12 小时前
Redis 进阶实战:渐进式遍历、持久化机制与事务详解
数据库·redis·缓存
SimonKing12 小时前
Workbuddy太占C盘空间了,写个迁移工具迁走10G的数据
java·后端·程序员