lombok 相关注解

话不多说,lombok相关的注解的使用,需要添加入如下依赖:


	org.projectlombok
    lombok
    1.18.20 

lombok相关注解详情如下:

注解名称 注解描述
@AllArgsConstructor 作用于类生成全参构造函数
@Builder 作用于类,将其变成建造者模式。还可作用于方法、构造器。
@Cleanup 作用于变量,自动关闭资源,针对实现了 java.io.Closeable 接口的对象有效。
@CustomLog 作用于类,自定义日志类,生成 log 对象。
@Data 作用于类,是以下注解的集合:@ToString @EqualsAndHashCode @Getter @Setter @RequiredArgsConstructor。
@EqualsAndHashCode 作用于类,覆盖默认的 equals 和 hashCode
callSuper:是否需要调用父类的方法,默认为 false。
@Generated 用于标记类、变量、方法是自动生成的,没什么大用。
@Getter 作用于类,生成该类所有的实例变量的 getter 方法作用于变量,生成变量的 getter 方法
@NoArgsConstructor 作用于类,生成无参构造方法
@NonNull 作用于成员变量和参数中,标识不能为空,否则抛出空指针异常。
@RequiredArgsConstructor 作用于类,生成包含 final 和 @NonNull 注解的成员变量的构造方法
@Setter 作用于类,生成该类所有的实例变量的 setter 方法。作用于变量,生成该变量的 setter 方法
@Singular 作用于集合字段,需要配合 @Builder 使用。
@SneakyThrows 作用于方法,对异常进行捕捉并抛出。
@Synchronized 作用于方法,可以替换 synchronized 关键字或 lock 锁。
@ToString 作用于类,覆盖默认的 toString() 方法。
@val 作用于类、变量,主要用于声明变量的类型,注解将从初始化程序表达式中推断类型,生成的变量是 final 不可以变。
@Value 作用于类,是以下注解的集合:@ToString @EqualsAndHashCode @Getter @RequiredArgsConstructor。
@var 和 @val 一样,两者区别在于 var 不加 final。
@With 作用于类、变量,生成 with + 变量名的方法,返回当前对象。

其中:AllArgsConstructor、NoArgsConstructor、RequiredArgsConstructor、Data、EqualsAndHashCode、Getter、Setter、Value等注解会经常用到,大家可着重了解其使用效果。

lombok注解的使用详情及各个注解达到的效果(替换了什么代码)持续完善中。。。

你可能感兴趣的:(Annontation(注解),java,注解,lombok)