首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

用java反照机制实现的比较不可思议的一件事

2013-07-26 
用java反射机制实现的比较不可思议的一件事这个例子一共两个java文件:package com.springimport java.lan

用java反射机制实现的比较不可思议的一件事
这个例子一共两个java文件:

package com.spring;import java.lang.reflect.Field;public class Main {public static void main(String[] args) throws Exception {//正常情况下Test类里面的str属性值是没法改变的,但是通过反射的强大功能是可以实现的Test test = new Test();Class clazz = Test.class;Field field = clazz.getDeclaredField("str");//设置为true表示反射会压制java语言的访问检查,也就是java不再检查私有的成员变量,此时反射也可以访问此变量。//因为str属性是private的,外界是无法访问的,如果不设置此属性运行时会报错。field.setAccessible(true);field.set(test, "world");System.out.println(test.getStr());//激动人心的时刻到了。把str的值改了。}}

热点排行