String str = "aba";
Class<String> cls1 = str.getClass();
Class<String> cls2 = Class.forName("java.lang.String");
Class<String> cls = String.class;
在上面的四句话中,第二句和第三句总是报错.这是为什么?该怎么为它们添加泛型啊?并且希望能说明原因.谢谢各位了.Class类泛型

解决方案 »

  1.   

    try {
    Class<?> cls1 = str.getClass();
    Class<?> cls2 = Class.forName("java.lang.String");
    Class<?> cls = String.class;
    } catch (ClassNotFoundException e) {
    e.printStackTrace();
    }
      

  2.   

    Class<? extends String> cls1 = str.getClass();
    Class<? extends String> clazz = (Class<? extends String>) Class.forName("java.lang.String");
      

  3.   

    try {
    Class<? extends String> cls1 = str.getClass();
    Class<? extends String> cls2 = Class.forName("java.lang.String");
    Class<? extends String> cls = String.class;
    } catch (ClassNotFoundException e) {
    e.printStackTrace();
    }