`

枚举类:枚举类的Field、方法、构造器

 
阅读更多
package org.lgy.study.enumstudy;

public enum SeasonEnum{
	//枚举类通过如下方式调用构造器
	SPRING("春天", 3),SUMMER("夏天", 6),FALL("秋天", 9),WINTER("冬天", 12);
	
	//枚举类的实例是在该类的第一行显式指定的,但依然可以定义构造器,只是构造器被强制为private权限,
	//因此无法通过调用构造器来显示创建实例
	SeasonEnum(String name,int mouth){
		this.name = name;
		this.mouth = mouth;
	}
	
	//枚举类就像普通类一样可以定义(静态)成员变量、(静态)成员方法
	//枚举类的成员变量、成员方法的调用方式和普通类一样
	private String name;
	private int mouth; 
	public static String str = "******";
	
	public void info(){
		System.out.println(this + ",代表" + name + ",始于" + mouth + "月。");
	}
	public static void method1(){
		System.out.println("------");
	}
}

 

package org.lgy.study.enumstudy;

public class EnumTest{
	public void judge(SeasonEnum season){
		//switch语句里的表达式可以是byte short char int String 枚举类
		//当switch控制表达式使用枚举类型时,后面case表达式中的值直接使用枚举值得名字,无须添加枚举类作为限定。
		switch(season)
		{
			case SPRING:
				System.out.println("Spring...");
				break;
			case SUMMER:
				System.out.println("Summer...");
				break;
			case FALL:
				System.out.println("Fall...");
				break;
			case WINTER:
				System.out.println("Winter...");
				break;
		}
	}
	
	public static void main(String[] args){
		System.out.println(SeasonEnum.str);
		SeasonEnum.method1();
		
		for(SeasonEnum s : SeasonEnum.values()){
			s.info();
		}
		
	}
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics