前言
項目里總有這樣一種神秘現象:明明只是幾個字段,卻堆滿 private final,每次都得機械敲上一遍。有的同事一邊敲一邊默念“代碼規范不能丟”,表情嚴肅得像在寫遺囑。可惜,規范雖好,手指遭殃。
于是,Lombok 悄然登場,肩扛簡潔大旗,手握注解神器,@FieldDefaults 正是其中最懂開發者“懶”心的存在。它的出現像極了“鍵盤拯救者”,一行注解,字段統統默認私有、自動只讀,不多也不少,剛剛好。
不再需要每個字段前面手動標注 private final,也不用擔心某個粗心隊友忘記修飾。代碼干凈得像剛洗完澡,閱讀體驗瞬間提升好幾個段位,連審查代碼的技術主管都忍不住點頭稱贊。
如果你曾被樣板代碼折磨得心力交瘁,@FieldDefaults 值得你好好了解。接下來就跟我一起,揭開它背后的魔法機制,看看它如何在不動聲色中,把開發體驗升華到新的境界。
簡介
@FieldDefaults(makeFinal = true, level = AccessLevel.PRIVATE) 是 Lombok 提供的一種類級注解,用于統一管理字段修飾符,讓開發者在定義類屬性時不再手忙腳亂。
其中,makeFinal = true 會讓每個字段自動帶上 final,直接變身“只讀神器”,誰也別想偷偷改動它。
而 level = AccessLevel.PRIVATE 則默默把所有字段藏進類的內部世界,隔絕外部窺探,堪稱“信息封裝守門員”。
這一注解登場的核心目的,就是解放你的雙手,讓你不必重復鍵入 private final,更不用擔心漏寫修飾符后代碼風格突然“跳戲”。
你可以把它看作是一鍵生成“高內聚、低耦合”字