码迷,mamicode.com
首页 > 其他好文 > 详细

lombok简介

时间:2019-09-01 13:05:48      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:logs   href   VID   编译器   tar   五个   tostring   ring   dha   

一、安装

1. IntelliJ IDEA->preference->plugins->Browse repositories->search and install,重启

2. 依赖

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.16.20</version>
    <scope>provided</scope>
</dependency>

 

二、注解

@Data: 相当于@Getter\@Setter\@RequiredArgsConstructor\@ToString\@EqualsAndHashCode这五个注解的集合

@EqualsAndHashCode:会生成equals()和hashCode()方法,且不会使用父类的属性

@NonNull, @CleanUp, @AllArgsConstructor

 

三、原理:

1. 对注解的解析有两种:编译时解析,运行时解析

2. 运行时解析,使用反射,@Retention必须设置为RUNTIME

3. lombok使用的是编译时解析,javac在编译源代码时,会调用实现了插件API的程序,属于对编译器的增强

 

四、lombok引起的问题:自动生成的equals()方法,只比较子类,而不比较父类的字段

 

 

 

参考:

https://www.cnblogs.com/heyonggang/p/8638374.html

https://www.cnblogs.com/wuyuegb2312/p/9750462.html

 

lombok简介

标签:logs   href   VID   编译器   tar   五个   tostring   ring   dha   

原文地址:https://www.cnblogs.com/june0816/p/5775752.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!