黑马程序员---java基础加强_成员变量的反射

---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

//成员变量的反射

import java.lang.reflect.Field;
//测试类
public class ReflectTest {
//主函数
public static void main(String[] args) throws Exception{
//声明并创建和初始化一个类对象
ReflectPoint pt = new ReflectPoint(2, 3); 
//声明一个字段变量,并用ReflectPoint类对象的y变量来初始化字段变量
Field fieldY = pt.getClass().getField("y");
//获取ReflectPoint对象中的变量并打印字段变量
System.out.println(fieldY.get(pt));
//声明一个字段变量,并用ReflectPoint类对象的x变量来初始化字段变量
Field fieldX = pt.getClass().getDeclaredField("x");
//因为x是私有变量,需要设置允许权限。否则fieldX.get(pt)会报错,说无权访问私有变量
fieldX.setAccessible(true);
//打印字段变量在pt对象中的值
System.out.println(fieldX.get(pt));

}


public class ReflectPoint {

//声明私有变量x
private int x;
//声明私有变量y

public int y;

//构造函数,用来初始化x和y
public ReflectPoint(int x, int y) {

//初始化x
this.x = x;

//初始化y
this.y = y;
}
}


----------------------ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值