java枚举简单示例

枚举就是用于描述对象个数有限的类型
单例设计模式,设计出来的是某个类型的对象只有一个;枚举类型就是有多个对象的单例设计模式,也可以成为多例模式
声明一个枚举类型,使用的关键字是enum,声明出来的也是一个类,编译出来也是一个.class的文件,只不过是补充了一些内容。

import java.util.Arrays;

public class Demo1 {
	
	public static void main(String[] args) {
		//分别调用每个枚举项中实现的不同的play()方法
		WeekDays.MON.play();
		WeekDays.TUS.play();
		WeekDays.WEN.play();
		WeekDays.THU.play();
		WeekDays.FRI.play();
		WeekDays.SAT.play();
		WeekDays.SUN.play();
		
		//获取枚举该枚举的所有枚举项
		WeekDays[] values = WeekDays.values();
		System.out.println(Arrays.toString(values));
		
	}

}

enum WeekDays {
	MON("星期一"){
		@Override
		public void play() {
			System.out.println("玩 推箱子");
		}
	},
	TUS("星期二"){
		@Override
		public void play() {
			System.out.println("玩 贪吃蛇");
		}
	},
	WEN("星期三"){
		@Override
		public void play() {
			System.out.println("玩 超级玛丽");
		}
	},
	THU("星期四"){
		@Override
		public void play() {
			System.out.println("玩 王者农药");
		}
	},
	FRI("星期五"){
		@Override
		public void play() {
			System.out.println("玩 QQ飞车");
		}
	},
	SAT("星期六"){
		@Override
		public void play() {
			System.out.println("玩 消消乐");
		}
	},
	SUN("星期天"){
		@Override
		public void play() {
			System.out.println("玩 lol");
		}
	};
	
	String name;
	
	private WeekDays(String name) {
		this.name = name;
	}
	
	public String getName() {
		return name;
	}
	
	public abstract void play();
	
}

程序运行结果如图

使用枚举的注意事项:
1、定义枚举类型必须使用enum关键字,创建的其实也是一个普通的类型。
2、所有的枚举项,必须定义在枚举类型的第一行(第一个分号之前),枚举项之间使用逗号分隔,最后一个枚举项之后需要使用分号结尾
3、枚举类型也有构造方法,只能默认提供空参构造,需要我们手动定义有参构造。在枚举类型中,所有的构造方法,都必须 是私有化的。
4、枚举类型也可以有抽象方法,但是必须在枚举项中,将该方法实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值