关于String类的反射

来源:互联网 发布:bt天堂软件下载 编辑:程序博客网 时间:2024/05/20 02:27
        众所周知:在Java中String不属于基本数据类型,而是JDK提供的类,所以参数是以引用的方式传递的。

但由于双引号被特殊处理 ( "内容" 即表示一个String对象) ,所以在日常使用中把String当做是通过值传递的

基本类型一样去用就可以了。

       点进String类的内部可以发现String中的数据是以字符数组的方式储存在一个名为value的属性中的。也就

是说只要我们能想办法更改value的值就可以直接改变String对象的内容,而不是通常的直接创建新的String对

象。但String类是不可变类,value是通过private和final修饰的,正常情况下根本不能修改value的值,于是想

到了Java类反射。

       根据我了解的知识:

                    1.通过暴力反射可以把私有成员反射出来

                    2.通过setAccessible(true)取消 Java 语言访问检查(final,private)

 实现代码如下:



0 0
原创粉丝点击