如何获取继承中泛型T的类型

    @SuppressWarnings("unchecked")
    public void testT()
    {
        clazz = (Class<T>)(
                (ParameterizedType)getClass()    //Class字节码
                .getGenericSuperclass())        //因为对于T.class我们无法获取,但是这个方法就能获取到父类的参数类型,返回值为ParameterizedType
                .getActualTypeArguments()[0];    //数组里第一个就是子类继承父类时所用类型
        
        System.out.println(clazz.getClass().getSimpleName());
    }

最近在整合代码,发现有很多重复性的代码,而且每次开发出一个新的东西就要另起一行写个新method,这让我无法忍受了!!!  

程序员不仅仅总是在写代码,有时候放下手中的火,想想能不能“偷偷懒” 回过头来弄个方法重构,框架的进一步自动化,对公司对自己都是有利的。

posted @ 2013-07-16 10:04  MuaRine  阅读(3022)  评论(0编辑  收藏  举报