您的位置:首页 > 其它

String是final类,常规情况下其值是不可变的。但是可以通过非常规方法——反射进行修改

2016-07-08 16:14 645 查看
/** 通过反射的方式来修改字符串String类的值
* Created by liaoqianwen on 2016/7/8.
*/

public class StringReflectTest {
public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException {
String name = "angel";
String name1 = "angel";

Field strField = String.class.getDeclaredField("value");
strField.setAccessible(true);
char[] data = (char[])strField.get(name);
data[4] = 'r';
System.out.println(name);
System.out.println(name1);
System.out.println(name == name1);

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: