lombok 基础注解之 @Setter

最全的 lombok 注解详情(随着版本不定时更新)

一、注解介绍

作用于类,生成该类所有的实例变量的 setter 方法。作用于变量,生成该变量的 setter 方法

二、属性介绍

  • value:设置 setter 方法访问控制符,默认为 public
    共有 PUBLIC、MODULE、PROTECTED、PACKAGE、PRIVATE、NONE
    MODULE 是 Java 9 的新特性,NONE 表示不生成 setter 方法,即停用注解功能
  • onMethod:列出的所有注解都放在生成的方法上
    JDK 7 之前的写法是 onMethod = @__({@Deprecated}),而 JDK 8 之后的写法是 onMethod_ = {@Deprecated}
  • onParam:列出的所有注解都放在生成的方法参数上
    JDK 7 之前的写法是 onParam = @__({@NonNull}),而 JDK 8 之后的写法是 onParam_ = {@NonNull}

三、实战演练

@Setter(value = AccessLevel.PROTECTED, onMethod_ = {
    
    @Deprecated}, onParam_ = {
    
    @NonNull})
public class 吕思墨 {
    
    
	private String name;
}
编译后

public class 吕思墨 {
    
    
	private String name;
	
  	@Deprecated
  	protected void setName(@NonNull String name) {
    
    
    	if (name == null)
    		throw new NullPointerException("name is marked non-null but is null");
    	this.name = name;
  	}
}

猜你喜欢

转载自blog.csdn.net/qq_39249094/article/details/121047118