【Java】【反射】Field获取反射对象字段及暴力反射

Field获取反射对象字段及暴力反射

public class Demo_Reflect {
    public static void main(String[] args) throws Exception {
        Class cls = Class.forName("com.demo.Person");
        Constructor c = cls.getConstructor(String.class,int.class);
        Person p = (Person) c.newInstance("张三",23);
        
        Field f = cls.getDeclaredField("name");// 获取反射对象的字段(如果字段为私有使用getDeclaredField,如果为公有则使用getFeild)
        f.setAccessible(true);// 去除私有权限
        f.set(p, "李四");
        
        System.out.println(p);
    }
}

class Person {
    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + "]";
    }
    
    private String name;
    private int age;
    
    public Person(String Name, int Age) {
        name = Name;
        age = Age;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 高新技术的重要性 这里的高新技术指的是Java基础中的知识,比如:反射、注解、代理、线程池、依赖注入等等。市面上的...
    庞哈哈哈12138阅读 6,094评论 1 19
  • Java Reflect 反射机制 类字节码文件是在硬盘上存储的,是一个个的.class文件。我们在new一个对象...
    灰气球阅读 4,868评论 0 0
  • 写在前面的话:很多人会说我直接new一个对象不就完了么,干嘛还用反射来获取对象。因为new属于静态编译,而反射属于...
    iDaniel阅读 12,751评论 1 4
  • 我想要一个名叫“你妈妈叫你去打酱油”的导购类app。 我可以列出我想要买的东西的购物清单,比如: 洗衣液 纸 姨妈...
    SharlotteZoo阅读 1,482评论 0 1
  • 我有一个芝麻大的胆子,一到黑夜就怕得要命。 叹口气,再打开一盏灯,房间灯火通明。闭上眼睛数羊,数了三千多只后数忘了...
    寐耳阅读 1,267评论 1 0