当前位置: 首页 > news >正文

Lombok的@Builder注解

Lombok的@Builder注解

  • builder模式
  • 示例用法

开源项目中看到这个注解,了解了一下,感觉对于多属性对象很有用

builder模式

先了解一下什么是builder模式。Builder 模式的目的是为了简化复杂对象的创建过程,尤其是当一个类拥有很多可选属性时。如果类的构造函数参数过多,直接使用构造器可能会导致代码难以维护且容易出错。而 Builder 模式通过链式调用的方式,使得代码更具可读性和可维护性。
简言之,使用该注解后,可以通过链式调用设置对象属性。

示例用法

@Data
@Builder
public class User {private String name;private int age;private String email;
}// 使用
User user = User.builder().name("John Doe").age(25).email("john@example.com").build();

看一下target中生成的.class文件,看看lombok做了什么

// 生成的静态内部类public static class UserBuilder {@Generatedprivate String name;@Generatedprivate int age;@Generatedprivate String email;@Generatedpublic UserBuilder name(String name) {this.name = name;return this;}@Generatedpublic UserBuilder age(int age) {this.age = age;return this;}@Generatedpublic UserBuilder email(String email) {this.email = email;return this;}// 构建方法@Generatedpublic User build() {return new User(this.name, this.age, this.email);}}// 提供了一个静态 builder() 方法@Generatedpublic static UserBuilder builder() {return new UserBuilder();}

http://www.mrgr.cn/news/46298.html

相关文章:

  • ES操作指南
  • Run the FPGA VI 选项的作用
  • AI改变一切,包括你的毕业论文!如何应对?
  • 十年网络安全工程师谈学习网络安全的正确顺序
  • 希亦超声波清洗机值得购买吗?清洁技术之王多维度测评大揭秘!
  • 基于邮箱的域名欺骗攻击:利用解析器绕过访问控制
  • 面对多种可燃气体,哪种传感器最适合你的应用场景?
  • vite+vue3实现动态路径导入
  • 电力电子技术03 AC-DC整流器(2)---单相半波整流器 二极管不控整流
  • 行盒的截断样式 box-decoration-break
  • 视频汇聚平台EasyCVR支持云端录像丨监控存储丨录像回看丨录像计划丨录像配置
  • vite搭建vue3项目
  • [稳定检索|投稿优惠]2024年材料科学、能源技术与智能制造国际会议(MSETIM 2024)
  • Linux入门3——vim的简单使用
  • Zotero插件指南:20个工具让你的学术生活更简单
  • 基于jmeter+perfmon的稳定性测试记录
  • iPaaS全面选型指南
  • RDL在事件代码中定义配置文件节点
  • vue-自定义指令
  • #FPGA新工程创建