枚举类中本质上是一个class,而且是Enum的子类,可以调用Enum中的方法。
它的对象定义在了类中,并且不能在类外部new 新的对象;
用途暂时不知道用在哪
/**
* 该类中:RED,GREEN,YELLOW均为对象名,当只有对象名时,默认为无参构造
* 该类中的构造器不能为public,全都为private类型的
* 可以像代码中的RED一样,直接自己new一个有参构造,然后调用有参构造。
* 当对象(代码中的RED,GREEN,YELLOW)需要重写方法时,在对象后加一个大括号,就可以在大括号内重写方法了,就像RED对象
*
*/
public enum Enumaerta {
RED("红色"){
@Override
public void method1() {
System.out.println(getName()+": "+"一种颜色");
}
},
Green,
YELLOW;
private String name;
private Enumaerta(){}
private Enumaerta(String name){
this.name=name;
}
public void method1(){ //定义一个方法
System.out.println("一种颜色");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}