zoukankan      html  css  js  c++  java
  • JAVA反射机制:在泛型为Integer的ArrayList中存放一个String类型的对象、在泛型为String的ArrayList中存放一个integer类型的对象、在泛型为Map的ArrayList中存放一个integer/String/HashMap类型的对象

    1. 反射机制:在泛型为Integer的ArrayList中存放一个String类型的对象

    package test;
    
    import java.lang.reflect.InvocationTargetException;
    import java.lang.reflect.Method;
    import java.util.ArrayList;
    import java.util.List;
    
    public class TestReflect1 {
        /**
         * 反射机制:在泛型为Integer的ArrayList中存放一个String类型的对象
         * @param args
         * @throws NoSuchMethodException
         * @throws SecurityException
         * @throws IllegalAccessException
         * @throws IllegalArgumentException
         * @throws InvocationTargetException
         */
        public static void main(String[] args) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException {
            List<Integer> list = new ArrayList<Integer>();
            Method method = list.getClass().getMethod("add", Object.class);
            method.invoke(list, 1);
            method.invoke(list, 2);
            method.invoke(list, "Java反射机制测试");
            method.invoke(list, 3);
            System.out.println(list);
        }
    }

    运行结果:


    2. 反射机制:在泛型为String的ArrayList中存放一个integer类型的对象

    package test;
    
    import java.lang.reflect.InvocationTargetException;
    import java.lang.reflect.Method;
    import java.util.ArrayList;
    import java.util.List;
    
    public class TestReflect2 {
        /**
         * 反射机制:在泛型为String的ArrayList中存放一个integer类型的对象
         * @param args
         * @throws NoSuchMethodException
         * @throws SecurityException
         * @throws IllegalAccessException
         * @throws IllegalArgumentException
         * @throws InvocationTargetException
         */
        public static void main(String[] args) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException {
            List<String> list = new ArrayList<String>();
            Method method = list.getClass().getMethod("add", Object.class);
            method.invoke(list, "Java反射机制测试");
            method.invoke(list, "Java反射机制测试");
            method.invoke(list, 1);
            method.invoke(list, "Java反射机制测试");
            System.out.println(list);
        }
    }

    运行结果:


    3. 反射机制:在泛型为Map的ArrayList中存放一个integer/String/HashMap类型的对象

    package test;
    
    import java.lang.reflect.InvocationTargetException;
    import java.lang.reflect.Method;
    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    
    public class TestReflect3 {
        /**
         * 反射机制:在泛型为Map的ArrayList中存放一个integer/String/HashMap类型的对象
         * @param args
         * @throws NoSuchMethodException
         * @throws SecurityException
         * @throws IllegalAccessException
         * @throws IllegalArgumentException
         * @throws InvocationTargetException
         */
        public static void main(String[] args) throws NoSuchMethodException, SecurityException, IllegalAccessException, IllegalArgumentException, InvocationTargetException {
            List<Map<String, Object>> list = new ArrayList<>();
            Method method = list.getClass().getMethod("add", Object.class);
            method.invoke(list, 1);
            method.invoke(list, "Java反射机制测试");
            
            Map<String, Object> map = new HashMap<String, Object>();
            map.put("name", "zhangsan");
            map.put("sex", "男");
            
            method.invoke(list, map);
            System.out.println(list);
        }
    }

    运行结果:

  • 相关阅读:
    大量 TIME_WAIT 状态 TCP 连接,对业务有什么影响?怎么处理
    点击按钮保存当前页面为图片html2canvas
    浅谈webpack优化
    nginx配置
    table表格边框线问题
    git push到指定仓库
    No bean named 'xxx' is defined错误,原因及解决方案
    关于The requested list key 'map' could not be resolved as a collection/array/map/enumera...
    Tomcat网页加载过慢的排查调整time_wait连接过多
    MySQL information_schema 系统库
  • 原文地址:https://www.cnblogs.com/hooly/p/11230279.html
Copyright © 2011-2022 走看看