java枚举enum详解

    枚举类型还是有必要的,以前没有的时候,都是通过定义静态常量,主要就是为了防止硬编码。

    枚举类型要注意,可以写构造方法,但是构造方法必须要用private修饰,其实想想就知道为什么要private了,既然都用枚举了,当然不能让你随便new一个对象出来了,不然还要枚举做什么。

    下面是示例代码:

public enum WordType {
	
	V("v") {
		@Override
		public String toString() {
			return "sb";
		}
	}, VT("vt") {
		@Override
		public String type() {
			return "me too";
		}
	};
	
	public String type() {
		return type;
	}
	
	private WordType(String type) {
		this.type = type;
	}
	
	private String type;
	
	@Override
	public String toString() {
		return type;
	}
	
}

   注意的地方就是,枚举出了构造方法必须私有,对象按开头那种方式写以外,其他都和普通java类一样,可以有方法,可以有成员变量,可以在对象后面加个花括号来覆盖某个方法。

   下面是测试代码:

public class EnumTest {
	
	public static void main(String[] args) {
		
		System.out.println(WordType.V);// sb
		System.out.println(WordType.V.type());// v
		
		System.out.println(WordType.VT);// vt
		System.out.println(WordType.VT.type());// me too
	}
	
}

猜你喜欢

转载自kibear.iteye.com/blog/2380674