java new 删除吗,java泛型对象初始化-java泛型对象会实例化吗T t=new T()
java泛型對象初始化--java泛型對象能實例化嗎T t=new T()
java中沒法得到泛型參數化類型,因為在編譯期沒法確定泛型參數化類型,也就找不到對應的類字節碼文件,自然就不行了
泛型反射的關鍵是獲取ParameterizedType,再調用它的getActualTypeArguments()方法獲得實際綁定的類型。但注意public class BookManager是不能被反射的,因為擦拭法的緣故。只有在Superclass 或者成員變量(Field.getGenericType())等有函數返回ParameterizedType的時候才能成功反射,
要么搞個構造函數把參數類型傳進去才行
我就寫了一個構造函數如下:
private static T newTclass(Class clazz) throws InstantiationException, IllegalAccessException{
T a=clazz.newInstance();
return a;
}
使用方法:
try {
T user = newTclass(User.class);
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
當然 這里的 User.class也可以由上層函數傳進來。
總結
以上是生活随笔為你收集整理的java new 删除吗,java泛型对象初始化-java泛型对象会实例化吗T t=new T()的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我国新武器外宣
- 下一篇: php 分页 查询 es,php-如何使