网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

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(); //获得带泛型的参数类型,返回的是type类型的数组

        for(Type paramType:t)
        {
            System.out.println("#"+paramType);
            if(paramType instanceof ParameterizedType) {  //判断是不是一个规范化参数类型
                //如果是强制转为规范化带泛型的参数类型,因为可能有多个泛型类型,所以用数组
                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) //判断是不是规范化的带泛型的返回类型
        {
            //强制转换成规范化的带泛型的参数类型
            Type[] genericTypes=((ParameterizedType)returnType).getActualTypeArguments();
            for(Type genericType:genericTypes)
            {
                System.out.println("返回值泛型类型"+genericType);
            }
        }

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

}

}

本文标题:java反射操作泛型
本文网址:http://bjjierui.cn/article/pcggpd.html

其他资讯