第一次使用 lombok,如果我理解正确的话,lomboks getter 和 setter 注释会生成 setter 和 getter 方法,而无需对其进行编码,但由于某种原因,每当我尝试调用时,我都会收到“未定义方法”错误getter/setter 方法。
这里出了什么问题?
import lombok.Getter;
import lombok.Setter;
public class Student {
@Getter @Setter
private String firstName;
@Getter @Setter
private String lastName;
public Student(String firstName, String lastName) {
super();
this.setFirstName(firstName); // method undefined error here
this.setLastName(lastName); // method undefined error here
}
}
你的代码应该像这样工作, 你的 EDI 上安装了 lombok 的插件吗?
Lombok 未安装在我的 IDE 中。
安装它解决了问题。
另一种简单的方法是使用
@Data
注释,它为类中的每个属性生成 getter 和 setter。
import lombok.Data;
@Data
public class Student {
private String firstName;
private String lastName;
public Student(String firstName, String lastName) {
super();
this.setFirstName(firstName);
this.setLastName(lastName);
}
}
快速说明:导入某些内容并不会使用它。它只是告诉程序一些“可能”被使用的东西。如果您使用现代 Java IDE(VSCode 或 IntelliJ),类、注释等将在您使用时自动导入。
|*> @Data 从 Lombok 开始工作
|+> 在顶部栏中单击“项目”
|+> 单击“属性”
|+> 在左侧菜单栏中 -> 转到“Maven”
|+> 选择“注释处理”
|+> [O] 选中“启用项目特定设置”
|+> 点击“应用”
@Getter
@Setter
public class Student {
private String firstName;
private String lastName;
public Student(String firstName, String lastName) {
this.setFirstName(firstName);
this.setLastName(lastName);
}
}