真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

java反射操作泛型

public class emm {

public void test01(Mapmap,Listlist)
{
    System.out.println("test01");
}

public Map test02()
{
    System.out.println("test02");
    return null;
}

public static void main(String[] args) {

    try {
        Method m=emm.class.getMethod("test01", Map.class,List.class); //反射方法

        Type[] t=m.getGenericParameterTypes(); //獲得帶泛型的參數(shù)類型,返回的是type類型的數(shù)組

        for(Type paramType:t)
        {
            System.out.println("#"+paramType);
            if(paramType instanceof ParameterizedType) {  //判斷是不是一個(gè)規(guī)范化參數(shù)類型
                //如果是強(qiáng)制轉(zhuǎn)為規(guī)范化帶泛型的參數(shù)類型,因?yàn)榭赡苡卸鄠€(gè)泛型類型,所以用數(shù)組
                Type[] genericTypes=((ParameterizedType) paramType).getActualTypeArguments();//獲得真正的泛型的類型,String、User
                for(Type genericType:genericTypes)
                {
                    System.out.println("泛型類型"+genericType);
                }
            }
        }

        Method m2=emm.class.getMethod("test02", null);

        Type returnType=m2.getGenericReturnType(); //獲得帶泛型的返回類型

        if(returnType instanceof ParameterizedType) //判斷是不是規(guī)范化的帶泛型的返回類型
        {
            //強(qiáng)制轉(zhuǎn)換成規(guī)范化的帶泛型的參數(shù)類型
            Type[] genericTypes=((ParameterizedType)returnType).getActualTypeArguments();
            for(Type genericType:genericTypes)
            {
                System.out.println("返回值泛型類型"+genericType);
            }
        }

    }catch(Exception e)
    {
        e.printStackTrace();
    }

}

}

文章名稱:java反射操作泛型
文章起源:http://weahome.cn/article/pcggpd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部