Java中泛型得到T.class
阿新 • • 發佈:2018-01-15
[] 大括號 alt 泛型 tcl target get gen ava
例子:
public class Test<T> { public Class<T> getTClass() { return (Class<T>) ((ParameterizedType) getClass().getGenericSuperclass()).getActualTypeArguments()[0]; } public void test() { System.out.println(getTClass()); } public static voidmain(String s[]) { (new Test<User>() {}).test(); } }
註意:
1、使用時必須在new出的方法中使用匿名內部類,不然獲取不到,比如:new Test<User>() {},後面帶了大括號的表示為匿名內部類。
參考:
http://blog.csdn.net/buyaore_wo/article/details/8138846
http://blog.csdn.net/z69183787/article/details/54312522
http://blog.csdn.net/ykdsg/article/details/5472591
Java中泛型得到T.class