zoukankan      html  css  js  c++  java
  • 暴力反射

    通过这个方法可以将私有的方法,进行获取出来

    实体类:

    package com.qingmu.alipay4.utils;
    
    /**
     * @Auther:qingmu
     * @Description:脚踏实地,只为出人头地
     * @Date:Created in 19:52 2019/8/8
     */
    public class AccessibleTest {
        private int age;
        private String name;
        private String heigh;
    
        public int getAge() {
            return age;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getHeigh() {
            return heigh;
        }
    
        public void setHeigh(String heigh) {
            this.heigh = heigh;
        }
    }

    使用暴力反射的方法:

    package com.qingmu.alipay4.utils;
    
    import java.lang.reflect.Field;
    
    /**
     * @Auther:qingmu
     * @Description:脚踏实地,只为出人头地
     * @Date:Created in 19:53 2019/8/8
     */
    public class Main {
        public static void main(String[] args) throws IllegalAccessException, ClassNotFoundException {
            Class<?> aClass = Class.forName("com.qingmu.alipay4.utils.AccessibleTest");
            AccessibleTest accessibleTest = new AccessibleTest();
            accessibleTest.setAge(18);
            accessibleTest.setName("huahua");
            for (Field declaredField : aClass.getDeclaredFields()) {
                declaredField.setAccessible(true);
                System.out.println(declaredField.get(accessibleTest));
            }
        }
    }

    下面的效果图:

  • 相关阅读:
    常用的字符集编码
    live555—VS2010/VS2013 下live555编译、使用及测试(转载)
    win32下Socket编程(转载)
    do{...}while(0)的意义和用法(转载)
    C++ static与单例模式
    MFC多线程各种线程用法 .
    a^1+b problem
    重返现世——题解
    第K大C
    懒癌
  • 原文地址:https://www.cnblogs.com/qingmuchuanqi48/p/11324359.html
Copyright © 2011-2022 走看看