枚举类型可以跟普通的类一样实现一个接口,但是实现接口的时候要求枚举中的每一个对象都必须单独覆写好接口中的抽象方法
范例实现接口
定义一个接口
package com.qn.test1;
public interface Print{
public String getColor();
}
定义一个类
package com.qn.test1;
public enum Color implements Print {
RED {
public String getColor() {
return "红色";
}
},
BLUE {
public String getColor() {
return "蓝色";
}
},
GREEN {
public String getColor() {
return "绿色";
}
}
}
在test类中进行测试
package com.qn.test1;
public class Test1 {
public static void main(String[] args) {
for(Color c:Color.values()){
System.out.print(c+"、");
}
}
}
还可以直接在枚举中定义抽象方法,但是要求枚举中的每一个对象都分别实现抽象方法
定义一个枚举类
package com.qn.test1;
public enum Color{
RED {
public String getColor() {
return "红色";
}
},
BLUE {
public String getColor() {
return "蓝色";
}
},
GREEN {
public String getColor() {
return "绿色";
}
};
public abstract String getColor();
}
在test类中进行测试
package com.qn.test1;
public class Test1 {
public static void main(String[] args) {
for(Color c:Color.values()){
System.out.print(c+"、");
}
}
}
package com.qn.test1;
public interface Print{
public String getColor();
}
定义一个类
package com.qn.test1;
public enum Color implements Print {
RED {
public String getColor() {
return "红色";
}
},
BLUE {
public String getColor() {
return "蓝色";
}
},
GREEN {
public String getColor() {
return "绿色";
}
}
}
在test类中进行测试
package com.qn.test1;
public class Test1 {
public static void main(String[] args) {
for(Color c:Color.values()){
System.out.print(c+"、");
}
}
}
还可以直接在枚举中定义抽象方法,但是要求枚举中的每一个对象都分别实现抽象方法
定义一个枚举类
package com.qn.test1;
public enum Color{
RED {
public String getColor() {
return "红色";
}
},
BLUE {
public String getColor() {
return "蓝色";
}
},
GREEN {
public String getColor() {
return "绿色";
}
};
public abstract String getColor();
}
在test类中进行测试
package com.qn.test1;
public class Test1 {
public static void main(String[] args) {
for(Color c:Color.values()){
System.out.print(c+"、");
}
}
}
|