Lombok 字段魔法:用 @FieldDefaults 解锁“隐身+锁死”双重特效
前言
项目里总有这样一种神秘现象:明明只是几个字段,却堆满 private final,每次都得机械敲上一遍。有的同事一边敲一边默念“代码规范不能丢”,表情严肃得像在写遗嘱。可惜,规范虽好,手指遭殃。
于是,Lombok 悄然登场,肩扛简洁大旗,手握注解神器,@FieldDefaults 正是其中最懂开发者“懒”心的存在。它的出现像极了“键盘拯救者”,一行注解,字段统统默认私有、自动只读,不多也不少,刚刚好。
不再需要每个字段前面手动标注 private final,也不用担心某个粗心队友忘记修饰。代码干净得像刚洗完澡,阅读体验瞬间提升好几个段位,连审查代码的技术主管都忍不住点头称赞。
如果你曾被样板代码折磨得心力交瘁,@FieldDefaults 值得你好好了解。接下来就跟我一起,揭开它背后的魔法机制,看看它如何在不动声色中,把开发体验升华到新的境界。
简介
@FieldDefaults(makeFinal = true, level = AccessLevel.PRIVATE) 是 Lombok 提供的一种类级注解,用于统一管理字段修饰符,让开发者在定义类属性时不再手忙脚乱。
其中,makeFinal = true 会让每个字段自动带上 final,直接变身“只读神器”,谁也别想偷偷改动它。
而 level = AccessLevel.PRIVATE 则默默把所有字段藏进类的内部世界,隔绝外部窥探,堪称“信息封装守门员”。
这一注解登场的核心目的,就是解放你的双手,让你不必重复键入 private final,更不用担心漏写修饰符后代码风格突然“跳戏”。
你可以把它看作是一键生成“高内聚、低耦合”字