Я использовал перечисление, в котором константой был класс. Мне нужно было вызвать метод для константы, но я не смог ввести зависимость от времени компиляции, и перечисление не всегда было доступно во время выполнения (часть дополнительной установки). Поэтому я хотел использовать отражение.
Это легко, но я раньше не использовал отражения с перечислениями.
Перечисление выглядело примерно так:
public enum PropertyEnum {
SYSTEM_PROPERTY_ONE("property.one.name", "property.one.value"),
SYSTEM_PROPERTY_TWO("property.two.name", "property.two.value");
private String name;
private String defaultValue;
PropertyEnum(String name) {
this.name = name;
}
PropertyEnum(String name, String value) {
this.name = name;
this.defaultValue = value;
}
public String getName() {
return name;
}
public String getValue() {
return System.getProperty(name);
}
public String getDefaultValue() {
return defaultValue;
}
}
Каков пример вызова метода константы с использованием отражения?