介绍
这篇文章主要介绍java枚举类型enum的使用方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
java枚举类型枚举用法有:1枚举型常量;2,带一个参数的枚举;3,向枚举中添加新方法;4、覆盖枚举的方法。
引用><强> java枚举类型枚举用法有:强>
<强>一、枚举型常量强>
包com.yang;//首先枚举是一个特殊的类//这个类相当于最终的静态修饰,不能被继承//他的构造方法强制被私有化、下面有一个默认的构造方法私人ColorEnum ();//所有的枚举都继承自. lang。Enum类。由于Java不支持多继承,所以枚举对象不能再继承其他类 公共enum ColorEnum {//每个枚举变量都是枚举类ColorEnum的实例,相当于红=new ColorEnum(1),按序号来。//每个成员变量都是最终的静态修饰 红、绿、空白、黄色; }测试类:
@org.junit.Test 公共空间ColorTest () {//序数返回枚举变量的序号 (ColorEnum颜色:ColorEnum.values ()) { System.out.println(颜色+“序数:“+ color.ordinal() +“,名字:“+ color.name ()); } }<强>二,带一个参数的枚举强>
包com.yang; 公共enum TypeEnum { 防火墙(“firewall"), 秘密(“secretMac"), 平衡(“f5"); 私人字符串typeName; TypeEnum(字符串typeName) { 这一点。typeName=typeName; }/* * *根据类型的名称,返回类型的枚举实例。 * * @param typeName类型名称 */公共静态TypeEnum fromTypeName(字符串typeName) { (TypeEnum类型:TypeEnum.values ()) { 如果(type.getTypeName () .equals (typeName)) { 返回类型; } } 返回null; } 公共字符串getTypeName () { 返回this.typeName; } }测试类:
@org.junit.Test 公共空间TypeTest () { 字符串typeName=癴5"; TypeEnum type=TypeEnum.fromTypeName (typeName);//类型:是TypeEnum类实例化对象typeName:实例化对象类型的值//顺序:实例化对象类型的序号(int)排序值(默认自带的属性顺序的值)//名称:实化对象的名字(String)枚举名称(即默认自带的属性名称的值) typeName System.out.println(类型+“:“+ type.getTypeName() +“,顺序:“+ type.ordinal() +“,名字:“+ type.name ()); }<强>三,向枚举中添加新方法强>
包com.yang; 公共enum SeasonEunm {//每一个枚举变量都是枚举类SeasonEunm的实例化//SeasonEunm。春天获得的对象相当于新SeasonEunm(“春“,“春困“),获得的对象 弹簧(“春“,“春困“),夏季(“夏“,“夏睡“),秋天(“秋“,“秋乏”),冬季(“冬“,“冬眠“);//强制私有化的构造方法,因为枚举类默认继承Eunm类,最后被静态修饰,不能被继承//由于被强制私人的,所以不能使用新去生成枚举对象//在SeasonEunm.SPRING获得对象,隐式调用了下面的构造方法//构造方法,赋值给成员变量 私人SeasonEunm(字符串名称字符串值){ this.name=名称; 这一点。值=https://www.yisu.com/zixun/value; }//添加成员变量的原因是,方便够着方法赋值,使用SeasonEunm.SPRING.getName就能获取对应的值 私人字符串名称; 私人字符串值; 公共字符串getName () { 返回名称; } 公共空间setName(字符串名称){ this.name=名称; } 公共字符串getValue () { 返回值; } 公共空间setValue(字符串值){ 这一点。值=价值; }测试类:
@org.junit.Test 公共空间SessionTest () {//序数返回枚举变量的序号 (SeasonEunm seasion: SeasonEunm.values ()) { System.out.println (seasion +“序数:“+ seasion.ordinal() +“,名字:“+ seasion.name ()); System.out.println(“枚举变量值:“+ seasion.getName() +“,枚举变量值:“+ seasion.getValue ()); } }<强>四、覆盖枚举的方法强>
包com.yang; 公共enum RGBEnum { 红色(“红色“,1),绿色(“绿色“,2),空白(“白色“,3),YELLO(“黄色“,4);//成员变量 私人字符串名称; 私人int指数;//构造方法,赋值给成员变量 私人RGBEnum(字符串名称,int指数){ this.name=名称; 这一点。指数=指数; }//覆盖方法:只能使用toString方法来输出枚举变量的值 @Override 公共字符串toString () { 返回this.index +“_" + this.name; } }java枚举类型enum的使用方法