黑马程序员:枚举

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ---------------------- 

枚举是JDK1.5之后的新特新

  枚举就是要让某个类型的变量的取值只能为某个固定值中的一个,否则,编译器会报错,枚举可以让编译时就可以控制源程序中填写的非法值,并通过变量的方式在开发阶段无法实现这一目标

 

注意:枚举只有一个成员时,就可以作为一种单例的实现方式

class  
{
	public static void main(String[] args) 
	{
		WeekDay1 weekDay=WeekDay1.MON;

		sop(weekDay.nextDay);

		WeekDay weekDay2=WeekDay.FRI;

		sop(weekDay2);
		sop(weekDay2.name());
		sop(weekDay2.ordinal());//打印对应的阿拉伯数字
		sop(WeekDay.valueOf("SUN".toString()));
		sop(WeekDay.values().length);//打印对应的数组
	}

	public static void sop(Object obj)
	{
	   System.out.println(obj);
	}

	public enum WeekDay//建立枚举
	{
	  SUN,MON,TUE,WED,THI,FRI,SAT;
	}
}


实现带有构造方法的枚举

public enum WeekDay
{
  SUN,MON,TUE,WED,THI,FRI,SAT;//默认使用第一个构造方法,除非指定参数 如:SUM(1)

  private WeekDay(){}

  private WeekDay(int x){}
}

 

实现带有抽象方法的枚举

//交通信号灯

public enum TrafficLamp
{
  Red()
	{
      public TrafficLamp nextLamp()
		{
	      return Green;
	  }
  }

  Green()
	{
      public TrafficLamp nextLamp()
		{
	      return Yellow;
	  }
  }

  Yellow()
	{
      public TrafficLamp nextLamp()
		{
	      return Red;
	  }
  }

  public abstract TrafficLamp nextLamp();
  private int time;
  private TrafficLamp(int time)
	{
      this.time=time;
  }
}



 

---------------------- ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值