Advertisement
Guest User

SomeTypeProblem

a guest
Sep 14th, 2017
200
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.09 KB | None | 0 0
  1. import java.util.Map;
  2. import java.util.HashMap;
  3.  
  4. public class Main {
  5.     public interface InterfaceA {
  6.       abstract public Object[] foo();
  7.     }
  8.    
  9.     public enum EnumA implements InterfaceA {
  10.       RED();
  11.      
  12.       public Object[] foo(){
  13.           System.out.println("g");
  14.           return null;
  15.       }
  16.     }
  17.    
  18.     public enum EnumB implements InterfaceA {
  19.       OAK();    
  20.      
  21.       public Object[] foo(){
  22.           System.out.println("g");
  23.           return null;
  24.       }
  25.     }
  26.    
  27.     public static void main(String[] args) {
  28.         new Main();
  29.     }
  30.  
  31.     public <T extends Enum<T> & InterfaceA> Main() {
  32.         Map<String, Class<T>> filter = new HashMap<>();
  33.         filter.put("a", EnumA.class);
  34.         importSettingViaEnum(filter.get("a"));
  35.     }
  36.  
  37.     private <T extends Enum<T> & InterfaceA> void importSettingViaEnum(Class<T> clazz) {
  38.         for (T elem : clazz.getEnumConstants()){
  39.             f(elem.ordinal());
  40.             elem.foo();
  41.         }
  42.     }
  43.  
  44.     private static void f(int ordinal) {
  45.         System.out.println("f");
  46.     }
  47.  
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement