誰想 2023-04-05 12:10 采纳率: 89.8%
浏览 19
已结题

java中lombok插件里的@RequiredArgsConstructor

lombok插件时通过注解来减少冗长代码的。
我在学习时看到在创建pojo类时用到@Data(@Setter、@Getter、@ToString、 @EqualsAndHashCode、 @RequiredArgsConstructor五合一),其中@RequiredArgsConstructor我不太理解,资料上是说这个注解用来生成包含被final和@nonnull修饰的属性的构造方法。
可是pojo类是必须有一个无参构造器的,来利用反射来创建JavaBean对象。添加这个注解后不就没有无参构造器了吗?为什么还能正常运行?

  • 写回答

2条回答 默认 最新

  • pzzhao 2023-04-05 16:20
    关注

    @RequiredArgsConstructor 是为有需要特殊处理的字段生成带有一个参数的构造函数,所有未能初始化的final字段,以及被标记为@NonNull且在声明时没有初始化的字段,都是该构造函数的参数。
    但是 pojo一般是没有这种字段的,所以你这里这个注解就是无用的。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月12日
  • 已采纳回答 4月5日
  • 修改了问题 4月5日
  • 创建了问题 4月5日

悬赏问题

  • ¥15 有没有整苹果智能分拣线上图像数据
  • ¥20 有没有人会这个东西的
  • ¥15 cfx考虑调整“enforce system memory limit”参数的设置
  • ¥30 航迹分离,航迹增强,误差分析
  • ¥15 Chrome Manifest扩展引用Ajax-hook库拦截请求失败
  • ¥15 用Ros中的Topic通讯方式控制小乌龟的速度,走矩形;编写订阅器代码
  • ¥15 LLM accuracy检测
  • ¥15 pycharm添加远程解释器报错
  • ¥15 如何让子窗口鼠标滚动独立,不要传递消息给主窗口
  • ¥15 如何能达到用ping0.cc检测成这样?如图