zoukankan      html  css  js  c++  java
  • 第五课 JAVA反射获取对象属性和方法

    package com.hero;
    
    import java.lang.reflect.Field;
    
    public class TestReflction5 {
        public static void main(String[] args) {
            Hero h =new Hero();
            //使用传统方式修改name的值为gareen
            h.name = "gareen";
            try {
                //获取类Hero的名字叫做name的字段
                Field f1= h.getClass().getField("name");
                //修改这个字段的值
                f1.set(h, "teemo");
                //打印被修改后的值
                System.out.println(h.name);
                 
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

    getField和getDeclaredField的区别:(这两个方法都是用于获取字段)
    getField 只能获取public的,包括从父类继承来的字段。
    getDeclaredField 可以获取本类所有的字段,包括private的,但是不能获取继承来的字段。 (注: 这里只能获取到private的字段,但并不能访问该private字段的值)

  • 相关阅读:
    寒假学习进度7
    寒假学习进度3
    寒假学习进度6
    寒假学习进度5
    寒假学习进度8
    加分项
    每日博客
    每日博客
    每日博客
    每日博客
  • 原文地址:https://www.cnblogs.com/XJJD/p/7181758.html
Copyright © 2011-2022 走看看