继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

lombok的常用注解用法与作用

都要好好的ming
关注TA
已关注
手记 6
粉丝 0
获赞 0

 

常用的几个注解:
@Data : 注在类上,提供类的get、set、equals、hashCode、canEqual、toString方法
@AllArgsConstructor : 注在类上,提供类的全参构造
@NoArgsConstructor : 注在类上,提供类的无参构造
@Setter : 注在属性上,提供 set 方法
@Getter : 注在属性上,提供 get 方法
@EqualsAndHashCode : 注在类上,提供对应的 equals 和 hashCode 方法
@Log4j/@Slf4j : 注在类上,提供对应的 Logger 对象,变量名为 log
 

关于@EqualsAndHashCode 注解的细节使用

  1. 此注解会生成  equals(Object other)  和  hashCode()方法。

  2. 它默认使用非静态,非瞬态的属性

  3. 可通过参数exclude排除一些属性

  4. 可通过参数of指定仅使用哪些属性

  5. 它默认仅使用该类中定义的属性且不调用父类的方法

实现equals, hashCode方法是在编程生活中再常见不过的一个东西了,那么自然@EqualsAndHashCode 这个annotation就成为了一个非常方便的工具。

默认情况下,被这个annotation标注的class会用到 除了 static,transient修饰的 所有属性作为判断标准,当然和之前的annotation一样,可是使用exclude选项除掉不想要的属性。

也可以通过callSuper包含父类的equals 和 hashCode。 当然如果你的class 没有继承任何其他的class,你却写了callSuper,那么会收获一个编译报错。



打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP