Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Map;
- import java.util.HashMap;
- public class Main {
- public interface InterfaceA {
- abstract public Object[] foo();
- }
- public enum EnumA implements InterfaceA {
- RED();
- public Object[] foo(){
- System.out.println("g");
- return null;
- }
- }
- public enum EnumB implements InterfaceA {
- OAK();
- public Object[] foo(){
- System.out.println("g");
- return null;
- }
- }
- public static void main(String[] args) {
- new Main();
- }
- public <T extends Enum<T> & InterfaceA> Main() {
- Map<String, Class<T>> filter = new HashMap<>();
- filter.put("a", EnumA.class);
- importSettingViaEnum(filter.get("a"));
- }
- private <T extends Enum<T> & InterfaceA> void importSettingViaEnum(Class<T> clazz) {
- for (T elem : clazz.getEnumConstants()){
- f(elem.ordinal());
- elem.foo();
- }
- }
- private static void f(int ordinal) {
- System.out.println("f");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement