自己看了半天,感觉应该没问题啊,也不知道是不是刚睡醒看不出来?发出来给大家练练眼睛……
public class Demo5 {
public void test() {
print(Grade.B);
}
public void print(Grade g) {
String s = g.getValue();
System.out.println(s);
}
// 如何定义枚举的构造方法和字段,去封装更多的信息
enum Grade {// A 100-90 B 89-80 C 79-70 D 69-60 E 59-0
A("100-90"), B("89-80"), C("79-70"), D("69-60"), E("59-0");
private String value;// 封装每个对象对应 的分数
private void Grade(String value) {
this.value = value;
}
public String getValue() {// 返回value的值
return this.value;
}
}
}
恳请善良的小伙伴帮忙解决下……
------解决方案--------------------
Grade的构造方法不能加返回值类型(void)
------解决方案--------------------
枚举中的每个实例会调用构造方法,构造方法不能有返回值的亲。把public void 去掉就行,顺便说一声,枚举是单例,构造方法也不能以public声明。
public class Demo5
{
public void test()
{
print(Grade.B);
}
public void print(Grade g)
{
String s = g.getValue();
System.out.println(s);
}
// 如何定义枚举的构造方法和字段,去封装更多的信息
enum Grade
{// A 100-90 B 89-80 C 79-70 D 69-60 E 59-0
A("100-90"), B("89-80"), C("79-70"), D("69-60"), E("59-0");
private String value;// 封装每个对象对应 的分数
Grade(String value)
{
this.value = value;
}
public String getValue()
{// 返回value的值
return this.value;
}
}
}
------解决方案--------------------
构造方法的void应该去掉
------解决方案--------------------
构造方法的是没有void的