目录标题
一、lombok是什么?
lombok是一种java的使用工具,可以用来帮助开发人员消除java中的冗长代码,尤其是对于简单的java对象(pojo),他通过注解实现这一目的。
二、lombok在idea中的使用
1、需要在idea中安装lombok插件然后重启
2、在pom文件中引入对应的依赖
<!-- lombok依赖-->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.16</version>
<scope>provided</scope>
</dependency>
三、lombok的常用注解
1、@Getter和@Setter
这两个注释可以注释在类上面,也可以注释在字段上面,这两个注释就是可以减少get和set方法的手动书写,当然在注释后面可以添加参数,可以说明这个字段或者类的级别,比如@Getter(AccessLevel.PROTECTED)就是说明它是protected级别的
如果在一个类上面注释了这两个注解是,可是你又希望有一个字段不会生成get和set方法是,可以在你希望不会的生成的字段上注释@Getter(AccessLevel.NONE),get同理,这个会把该字段的保护起来,不会生成这两个方法
特别注意的是如果一个字段有静态修饰词static是不会生成这两个方法,还是final修饰时,不会生成set方法。
下面是.java文件以及生成的.class文件
.java文件
import lombok.AccessLevel;
import lombok.Getter;
import lombok.Setter;
/**
* @author weiguorong
* @date 2021/2/12 16:22
*/
@Getter
@Setter
public class Student {
static int id;
final int id2 = 10;
private String name;
@Setter(AccessLevel.PRIVATE)
private String sex;
@Setter(AccessLevel.NONE)
@Getter(AccessLevel.NONE)
private String email;
}
生成的.class文件
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
public class Student {
static int id;
final int id2 = 10;
private String name;
private String sex;
private String email;
public Student() {
}
public int getId2() {
this.getClass();
return 10;
}
public String getName() {
return this.name;
}
public String getSex() {
return this.sex;
}
public void setName(String name) {
this.name = name;
}
private void setSex(String sex) {
this.sex = sex