一类,它得到了枚举:是否可以在Java枚举中使用上范围对象?
public class EnumTest {
private Employee empl;
public EnumTest(Employee empl) {
this.empl = empl;
}
public enum ALL_STRING {
FNAME(empl.getFirstName()),
LNAME(empl.getLastName()),
POSITION(empl.getPosition());
String str;
ALL_STRING(String inStr) {
str = inStr;
}
public String getStr() {
return str;
}
}
}
Employee类:
public class Employee {
private String firstName;
private String lastName;
private String position;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getPosition() {
return position;
}
public void setPosition(String position) {
this.position = position;
}
}
当我试图编译它得到错误,
/家庭/ shamal/src目录/测试/src/test/EnumTest.java:21:非静态变量empl不能从静态上下文中引用FNAME(empl.getFirstName()),
/home/shamal/src/Test/s rc/test/EnumTest.java:22:非静态变量empl不能从静态上下文中引用LNAME(empl.getLastName()),
/home/shamal/src/Test/src/test/EnumTest。 java:23:非静态变量empl不能从静态上下文中引用POSITION(empl.getPosition());
3错误
什么是错误的代码和什么应该是正确的方式?
谢谢。