背景:如何将一个域关联的属性搞到一个类中,可以使用Supplier这个类
public class SupplierTest {
public enum PersonEnum{
NAME("name",PersonEnum::getName),
AGE("age",PersonEnum::getAge)
;
private String key;
private Supplier<String> supplier;
PersonEnum(String key,Supplier<String> supplier){
this.key=key;
this.supplier=supplier;
}
private static String getName(){
return "张三丰";
}
private static String getAge(){
return "100";
}
public static void show(){
for(PersonEnum personEnum:PersonEnum.values()){
System.out.println(personEnum.key+"---"+personEnum.supplier.get());
}
}
}
/**
*
* @param args
*/
public static void main(String[] args) {
PersonEnum.show();
}
}
name---张三丰
age---100
合理的使用枚举,可以增加类的独立使用