新闻资讯

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻资讯列表

java枚举是甚么

发布时间:2023-07-17 07:49:50

Java枚举的介绍

Java枚举(Enum)是一种特殊的类,它代表了一组有限的、相关的常量。

枚举常量的定义使用关键字enum,可以将一个枚举常量看做是一种特殊的类。枚举常量可以有属性、方法和构造函数,其构造函数只能是private访问权限。

Java枚举的常见用法

  1. 在switch语句中的使用
  2. Java中,使用枚举作为switch语句的判断条件,可以免使用常量字符串或整型数据酿成的可读性不高问题。以下面的例子:

    enumFruit{APPLE,BANANA,ORANGE;}publicstaticvoidmain(String[]args){Fruitfruit=Fruit.APPLE;switch(fruit){caseAPPLE:System.out.println(Ilikeapples.);break;caseBANANA:System.out.println(Ilikebananas.);break;caseORANGE:System.out.println(Ilikeoranges.);break;default:break;}}
  3. 作为常量使用
  4. 枚举常量可以代表一些特定的状态或类型,在程序中使用时,可以提高程序的可读性和可保护性。

    enumColor{RED,BLUE,YELLOW;}publicclassPen{privateColorcolor;publicPen(Colorcolor){this.color=color;}publicColorgetColor(){returncolor;}}publicstaticvoidmain(String[]args){PenredPen=newPen(Color.RED);PenbluePen=newPen(Color.BLUE);PenyellowPen=newPen(Color.YELLOW);System.out.println(redPen.getColor());//输出REDSystem.out.println(bluePen.getColor());//输出BLUESystem.out.println(yellowPen.getColor());//输出YELLOW}
  5. 使用枚举类的方法和属性
  6. 枚举常量可以有属性和方法,这些属性和方法可以被调用。比以下面的例子:

    enumShape{CIRCLE(3.14),SQUARE(4),RECTANGLE(5,7);privatedoublearea;Shape(doublearea){this.area=area;}privateintwidth;privateintlength;Shape(intwidth,intlength){this.width=width;this.length=length;}publicdoublegetArea(){returnarea;}publicintgetWidth(){returnwidth;}publicintgetLength(){returnlength;}}publicstaticvoidmain(String[]args){System.out.println(Shape.CIRCLE.getArea());System.out.println(Shape.RECTANGLE.getWidth());System.out.println(Shape.SQUARE.getLength());}

Java枚举的优点

1.增加代码的可读性和可保护性。
2.编译时检查类型安全性,可以免出现常量字符串或整型数据酿成的毛病问题。
3.相对常量字符串,枚举类型可以提供更多的特性,比如属性、方法和构造函数。

Java枚举的缺点

1.枚举类型不能被继承,不能实现接口,这会在一些场景下产生限制。
2.枚举类的实例在存在多线程的情况下可能会有线程安全问题。
3.枚举类型增加时,需要修改代码,不够灵活。

桂}哥}网}络www.gUIgege.cn

X

截屏,微信识别二维码

微信号:muhuanidc

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!