JAVA修改静态常量的方法

RT,代码块,一目了然

 

/*
以下省略xxx自定义方法名&参数&返回值的代码
...
*/
//通过打开Field权限来实现静态常量的值
Field modifiersField = Field.class.getDeclaredField("modifiers"); 
modifiersField.setAccessible(true); 
//这里的filed才是真正需要修改值的静态常量对象,当然这个filed是外部传入的Field对象
modifiersField.setInt(field, field.getModifiers() & ~Modifier.FINAL); 
//这里的buffer只是外部传入的stringbuffer对象,此处的field的值类型是String
field.set(null, buffer.toString());
 

 

你可能感兴趣的:(java)