public class EnumTest { public static void main(String[] args) { Enum.valueOf((Class>)null, "foo"); } } $ javac EnumTest.java EnumTest.java:3: valueOf(java.lang.Class,java.lang.String) in java.lang.Enum cannot be applied to (java.lang.Class>,java.lang.String) Enum.valueOf((Class>)null, "foo"); ^ 1 error $