枚举的其他应用:实现接口
枚举可以跟其他类一样实现接口,但是要求实现接口的时候,要求枚举中的每个对象都必须单独覆写好接口中的抽象方法。
package 类集; interface Print { public String getColor(); } enum Color implements Print{ RED{ public String getColor(){ //每个对象都要覆写好接口中的方法。 return "红色" ; } },GREEN{ public String getColor(){ //每个对象都要覆写接口中的方法 return "绿色" ; } },BLUE{ public String getColor(){ return "蓝色" ; } } ; public abstract String getColor() ; } public class test1{ public static void main(String args[]){ for(Color c:Color.values()){ System.out.print(c.getColor() + "、") ; } } }
输出结果:
红色、绿色、蓝色、
还可在枚举中定义抽象方法,但是要求枚举中每个对象都分别实现此抽象方法。
package 类集; enum Color{ RED{ public String getColor(){ //要求每个对象都分别实现此抽象方法。 return "红色" ; } },GREEN{ public String getColor(){ return "绿色" ; } },BLUE{ public String getColor(){ return "蓝色" ; } } ; public abstract String getColor() ; //抽象方法。 } public class test1{ public static void main(String args[]){ for(Color c:Color.values()){ System.out.println(c.getColor() + "、") ; } } }