Java反射メカニズムによるクラス内のプライベート属性の値の変更

1400 ワード

まず、クラスを作成するには、プライベート属性が含まれます.
class PrivateField{

    private String username = "Jason";

}

反射メカニズムによってusernameの値を変更します.
//        

PrivateField privateField = new PrivateField();

//     Class

Class<?> classType = privateField.getClass();

//          

Field field = classType.getDeclaredField("username");



//          ,    ,             Field    。

field.setAccessible(true);

System.out.println(field.get(privateField));

//       

field.set(privateField, "aaaaa");

System.out.println(field.get(privateField));

天王ゲジトラの分割線です