java 定义枚举
Java的枚举(Enum)类型是一种特殊的类,用于定义一组固定的常量。它可以用于定义归纳性的、有边界的、清晰的类别。有了枚举,就不用使用传统的宏定义来实现表示一组固定的可选值,而可以将它们直接编写在枚举中,使其具有更高的可读性和可维护性。
Java定义枚举主要有两种途径,一种是实现定义Enum接口,另一种是定义Enum类。
实现定义Enum接口
1、在实现定义Enum接口时,首先要定义一个枚举类,该类必须实现Enum接口。
enum函数 publicenum Color{
RED,GREEN,BLUE;
}
2、接下来可以自定义枚举类的构造方法,以及一些相关的参数,这就是自定义枚举实现Enum接口的方法。
publicenum Color{
RED(红1),GREEN(绿2);
private String name;
private int index;
private Color(String name,int index){
this.name=name;
this.index=index;
}
...//其他方法
}
定义Enum类
1、在定义Enum类时,首先要定义一个类,该类必须继承Enum类,同时必须包含一个enum实例数组。
public classSeason extends Enum{
public static finalSeason SPRING;
public static finalSeason SUMMER;
public static finalSeason AUTUMN;
public static finalSeason WINTER;
//造器
privateSeason(String name,int index){
super(name,index);
}
static {
SPRING = newSeason(spring0);
SUMMER = newSeason(summer1);
AUTUMN = newSeason(autumn2);
WINTER = newSeason(winter3);
}
}
2、接下来可以自定义枚举类的构造函数,以及一些相关的参数,这就是自定义枚举类的方法。
public classSeason extends Enum{
public static finalSeason SPRING;
public static finalSeason SUMMER;
public static finalSeason AUTUMN;
public static finalSeason WINTER;
//有构造器
privateSeason(String name,int index){
super(name,index);
}
//义实例
static {
SPRING = newSeason(spring0);
SUMMER = newSeason(summer1);
AUTUMN = newSeason(autumn2);
WINTER = newSeason(winter3);
}
//盖方法
public static Season valueOf(String name){
if(name.equals(spring
return SPRING;
if(name.equals(summer
return SUMMER;
if(name.equals(autumn
return AUTUMN;
if(name.equals(winter
return WINTER;
return null;
}
//得枚举的名称
public static String getName(int index){
for(Season s:Season.values()){
Index()==index){
return s.name();
}
}
return null;
}
}
综上所述,定义枚举类采用两种方法,实现Enum接口和定义Enum类,可以自定义枚举实例,以及枚举实例的参数。定义枚举类时可以根据需求,采用不同的方法,以提高代码的可读性和可维护性。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论