暴力反射

Posted qingmuchuanqi48

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了暴力反射相关的知识,希望对你有一定的参考价值。

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

实体类:

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));
        
    

下面的效果图:

技术图片

 

以上是关于暴力反射的主要内容,如果未能解决你的问题,请参考以下文章

反射 + 暴力反射

暴力反射

反射动态的获取字段&暴力访问

非暴力沟通---让爱融入生活

Pikachu靶场通过记录

08.Java反射问题