利用反射
/**
-
如果我想要改变一个 String 的值,而又不想把它重新指向其他对象的话,应
-
利用反射修改char数组的值
*/
public class reflection_ {
public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException {
//原始的值
String s = “wyk”;
System.out.println(s.hashCode()); //118217
Class aClass = String.class;
Field field = aClass.getDeclaredField(“value”);
//爆破,操作private属性
field.setAccessible(true);
field.set(s,new char[]{‘t’,‘y’,‘u’});
System.out.println(s.hashCode()); //118217}
}