Java之枚举
枚举类的格式:
pbulic enum 枚举类类名{
枚举对象1(实参),枚举对象1(实参)...;
属性名;
(无参/有参)构造器;
get方法;
}
枚举类中不建议使用set方法,因为每个枚举对象都被public static final修饰,当用set方法进行赋值的时候,实际上是修改内存中静态变量的值,这个值原本的意义就被修改了,这个时候如果其它地方再来判断,必然出错。
eg:
public enum EnumDemo {
SUCCESS(001,"消息传递成功"),
FAILED(002,"消息传递失败");
private Integer code;
private String message;
private EnumDemo(Integer code,String message){
this.code = code;
this.message = message;
}
public Integer getCode(){
return code;
}
public String getMessage(){
return message;
}
}
使用Lambok快速开发枚举类
@Getter
@AllArgsConstructor
public enum EnumDemo2{
SUCCESS(001,"消息传递成功"),
FAILED(002,"消息传递失败");
private Integer code;
private String message;
}
枚举类注意事项:
标签:code,Java,对象,private,枚举,message,public From: https://www.cnblogs.com/joudys/p/17182137.html枚举类无法通过new进行实例化对象的创建,否者汇编报错。
当枚举类没有任何构造器的时候,Jvm的编译器会提供一个pravite的无参构造器供其使用。有的话,就不会提供。
枚举类的构造器只能被private进行修饰,如果没有,且也不是“缺省”,JVM的编译器会自动补全。
枚举类中的构造器无法使用super(实参)。
枚举类中的枚举对象隐式被 public static final 关键字修饰,如果显示修饰,编译报错。
枚举对象必须写在枚举类的第一行,否者编译报错。
枚举对象如果使用无参构造器进行对象的初始化,枚举对象后面的()可以不写。
所有的枚举类都隐式继承Enum类。
所有的枚举类都无法继承其它类,因为唯一单继承机会给了Enum类。
所有的枚举类都可以实现多个接口。
所有的枚举类都不可以被其它类进行继承。