Java语言用枚举体定义结构体,在枚举体内怎么定义结构体呢?代码又怎么通过枚举体去访问里面的结构体的呢
枚举类定义:
/**
* 缓存模式枚举,主要包含分片模式和集群模式
*
* @author huazie
* @version 1.1.0
* @since 1.1.0
*/
public enum CacheModeEnum {
SHARDED(0, "分片模式,即缓存服务器是独立部署,客户端进行分片"),
CLUSTER(1, "集群模式,即缓存服务器是集群化部署,适用于Redis");
private int mode;
private String desc;
CacheModeEnum(int mode, String desc) {
this.mode = mode;
this.desc = desc;
}
public int getMode() {
return mode;
}
public String getDesc() {
return desc;
}
}
package com.yike.csdn.demo20230708;
/**
* 周的天枚举类
*/
public enum DayOfTheWeek {
SUNDAY("星期天"), MONDAY("星期天"),
TUESDAY("星期天"), WEDNESDAY("星期天"),
THURSDAY("星期天"), FRIDAY("星期天"),
SATURDAY("星期天");
/**
* 名称
*/
private String name;
DayOfTheWeek(String value) {
this.name = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
package com.yike.csdn.demo20230708;
/**
* 测试周的天
*/
public class DayOfTheWeekTest {
/**
* 程序入口
*
* @param args 参数
*/
public static void main(String[] args) {
// 使用星期天枚举类
String value = DayOfTheWeek.FRIDAY.getName();
System.out.println(value);
}
}
测试结果:
Java虚拟机只会在不同的类的类名相同且加载该类的加载器均相同的情况下才会判定这个是一个类。如果没有双亲的委派机制,则同一个类就会出现被多个的类加载器加载的情况的,如此以来,就会被识别为两个不同的类,相互赋值的情况就会出现。
双亲委派机制就可以保证多加载器加载某个类的时候,最后都是由一个加载器加载的,确保最终的加载结果相同的。
如果没有双亲委派机制的话,让所有的类加载器自行的加载的话,就会多出很多的类,应用程序就会一片混乱。
其作用就是: