实例化具有无参数构造函数的泛型对象
//newInstance() method need constructor without parameter
//Class come form Class.class
public T getNewObject(Class cls) {
T t=null;
try {
t = cls.newInstance();
} catch (InstantiationException|IllegalAccessException e) {
e.printStackTrace();
}
return t;
}
调用
String i =getNewObject(String.class);
这种方法需要泛型类具有一个无参数构造函数
实例化没有无参数构造函数的泛型对象
//newInstance() method need constructor with parameter
public T getNewObject(Constructor cls, double d) {
T t = null;
try {
t = cls.newInstance(d);
} catch (InstantiationException | IllegalAccessException
| IllegalArgumentException | InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return t;
}
调用
con = Float.class.getConstructor(double.class);
Float k =getNewObject(con,10.0);
这种方法先确定使用泛型类的哪一个构造函数,再通过该构造函数newInstance实例出来。
通用的实例泛型对象(无需区别是否有无参数构造函数)………………