zoukankan      html  css  js  c++  java
  • 反射获取泛型信息

    获取泛型信息

    反射操作泛型

    代码练习

    import com.exception.demo01.Test;
    
    import java.lang.reflect.Method;
    import java.lang.reflect.ParameterizedType;
    import java.lang.reflect.Type;
    import java.util.List;
    import java.util.Map;
    
    //通过反射获取泛型
    public class Test11 {
    
        public void test01(Map<String,User> map, List<User> list){
            System.out.println("test01");
        }
    
        public Map<String,User> test02(){
            System.out.println("test02");
            return null;
        }
    
        public static void main(String[] args) throws NoSuchMethodException {
            Method method = Test11.class.getMethod("test01", Map.class, List.class);
    
            Type[] getGenericParameterTypes = method.getGenericParameterTypes();
    
            for (Type getGenericParameterType : getGenericParameterTypes) {
                System.out.println("#"+getGenericParameterType);
                if (getGenericParameterType instanceof ParameterizedType){
                    Type[] actualTypeArguments = ((ParameterizedType) getGenericParameterType).getActualTypeArguments();
                    for (Type actualTypeArgument : actualTypeArguments) {
                        System.out.println(actualTypeArgument);
                    }
                }
            }
    
            method = Test11.class.getMethod("test02", null);
            Type genericReturnType = method.getGenericReturnType();
            if (genericReturnType instanceof ParameterizedType){
                Type[] actualTypeArguments = ((ParameterizedType) genericReturnType).getActualTypeArguments();
                for (Type actualTypeArgument : actualTypeArguments) {
                    System.out.println(actualTypeArgument);
                }
            }
        }
    }
    
  • 相关阅读:
    广播的最佳实践---实现强制下线功能
    广播的最佳实践---实现强制下线功能
    使用本地广播
    使用本地广播
    关于Win7固态优盘的优化方法
    关于Win7固态优盘的优化方法
    在屏幕中使用评分组件
    在屏幕中使用评分组件
    【NYOJ】[65]另一种阶乘问题
    【NYOJ】[65]另一种阶乘问题
  • 原文地址:https://www.cnblogs.com/helloxiaolu/p/13333882.html
Copyright © 2011-2022 走看看