日期:2014-05-20  浏览次数:20687 次

java泛化问题
Java code
package generics;

public class Exercise22<T> 
{
    T x;
    Exercise22(Class<T> args)
    {
        try
        {
            x=args.newInstance();
        }catch(Exception e)
        {
            System.out.print("error");
        }
    }
    public static void main(String[] args)
    {
        Exercise22 e= new Exercise22(Integer.class);
        System.out.print(e.x);
    }

}


为什么捕获异常了???????????


------解决方案--------------------
因为Integer类没有不带参数的构造方法。
你把Integer.class==>String.class 就好用了