news 2026/6/12 18:48:26

@Builder.Default 未生效

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
@Builder.Default 未生效

一、问题代码

import lombok.Builder; import lombok.Data; @Data @Builder public class User { private String name = "未知用户"; private Integer age; public static void main(String[] args) { // 通过Builder创建对象,未指定name User user = User.builder().age(28).build(); System.out.println(user.getName()); // 输出:null(预期:未知用户) } }

二、根源分析:@Builder.Default 的作用机制

要解决生效问题,需先明确@Builder.Default的核心设计逻辑:
@Builder的本质:Lombok 的@Builder会为实体类生成一个内部Builder类,通过Builder的setter方法赋值属性,最终调用build()方法创建目标对象。
若仅在属性上直接赋值,该赋值逻辑仅在通过new User()创建对象时生效,不会自动同步到 Builder 类中。

三、解决方案:正确使用 @Builder.Default

import lombok.Builder; import lombok.Data; @Data @Builder public class User { // 正确用法:@Builder.Default直接标注在属性上,赋值语句紧跟 @Builder.Default private String name = "未知用户"; // 该默认值会同步到Builder private Integer age; public static void main(String[] args) { User user = User.builder().age(28).build(); System.out.println(user.getName()); // 输出:未知用户(生效!) // 显式设置name时,会覆盖默认值 User user2 = User.builder().name("张三").age(30).build(); System.out.println(user2.getName()); // 输出:张三 } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/7 11:54:31

10个高效降AI率工具,继续教育学员必备指南

10个高效降AI率工具,继续教育学员必备指南 AI降重工具:让论文更自然,更安全 在当前的学术写作环境中,越来越多的继续教育学员开始关注“AIGC率”与“查重率”的问题。随着AI技术的广泛应用,许多论文内容在不经意间带有…

作者头像 李华
网站建设 2026/6/10 17:19:05

AI 与 IT 从业者:迈向“共生纪元”的深层对话

一:当代码开始“自省”:AI在IT领域的渗透现状 清晨,硅谷某科技公司的开发团队正在使用AI辅助编程工具。只需用自然语言描述需求,系统便能生成基础代码框架,自动检测漏洞,甚至优化算法效率。这一幕正日益普遍…

作者头像 李华
网站建设 2026/6/11 16:05:30

9 个降AI率工具,专科生必看!

9 个降AI率工具,专科生必看! AI降重工具:让论文更自然,更专业 在当今学术环境中,随着AI写作工具的广泛应用,论文中的AIGC率问题变得越来越突出。许多学生在使用AI辅助写作时,往往会出现语句生硬…

作者头像 李华
网站建设 2026/6/10 18:11:15

Nintendo Switch 文件解析神器 NSTool 完全指南 [特殊字符]

还在为无法解析 Switch 游戏文件而烦恼吗?NSTool 来帮你!这是一款专为 Nintendo Switch 文件格式设计的全能解析工具,让你轻松解锁游戏文件的神秘面纱。✨ 【免费下载链接】nstool General purpose read/extract tool for Nintendo Switch fi…

作者头像 李华
网站建设 2026/6/11 3:53:51

(超详细)AI大模型构建小众知识图谱实战:从0到1,保姆级教程在此!

大模型如何 “玩转” 小众专业知识图谱?从威胁情报领域看技术突破。在网络安全领域,威胁情报是抵御攻击的 “情报网”,但大量开源威胁情报以非结构化文本形式存在,如同散落的零件,难以直接用于检测防御。而知识图谱能将…

作者头像 李华
网站建设 2026/6/12 6:04:34

一文搞懂 MCP:从入门到实战(含本地项目 MCP Server 示例)

用 MCP 打通本地项目与大模型:从概念到实战 一文搞清:MCP 是什么、如何和 LangGraph / CrewAI / AutoGen 配合、以及如何给本地项目写一个可用的 MCP Server。 这里写目录标题用 MCP 打通本地项目与大模型:从概念到实战1. MCP 是什么&#xf…

作者头像 李华