`
chaoyi
  • 浏览: 290392 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

枚举的其他应用

 
阅读更多

本章目标
可以使用枚举实现一个接口
可以在枚举类中定义抽象方法

 

让枚举类实现一个接口
枚举类也可以实现一个接口,但是因为接口中会存在抽象方法,所以枚举类中的每个对象都必须分别实现此抽象方法。

 

让枚举类实现一个接口

interface Print{//定义 Print 接口
	public String getColor();//定义抽象方法
}
enum Color implements Print{//枚举类实现接口
	RED{//枚举对象实现抽象方法
		public String getColor(){
			return "红色";
		}
	},GREEN{//枚举对象实现抽象方法
		public String getColor(){
			return "绿色";
		}
	},BLUE{//枚举对象实现抽象方法
		public String getColor(){
			return "蓝色";
		}
	};
}
public class InterfaceEnumDemo {
	public static void main(String[] args) {
		for(Color c:Color.values()){//foreach 输出
			System.out.print(c.getColor()+"、");//输出
		}
	}
/* 结果:
 * 红色、绿色、蓝色、
 * */
}

 
在枚举类中定义抽象方法

enum Color {//枚举类
	RED{//枚举对象实现抽象方法
		public String getColor(){
			return "红色";
		}
	},GREEN{//枚举对象实现抽象方法
		public String getColor(){
			return "绿色";
		}
	},BLUE{//枚举对象实现抽象方法
		public String getColor(){
			return "蓝色";
		}
	};
	public abstract String getColor();
}
public class AbstractMethodEnum {
	public static void main(String[] args) {
		for(Color c:Color.values()){//foreach 输出
			System.out.print(c.getColor()+"、");//输出
		}
	}
/* 结果:
 * 红色、绿色、蓝色、
 * */
}

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics