문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
java:reflection [2021/10/27 10:05] kwon37xi |
java:reflection [2023/11/30 14:53] (현재) kwon37xi |
||
---|---|---|---|
줄 43: | 줄 43: | ||
assertThat(String.class.isAssignableFrom(Serializable.class)).isFalse(); | assertThat(String.class.isAssignableFrom(Serializable.class)).isFalse(); | ||
</ | </ | ||
+ | |||
+ | ===== private static final 필드 읽기/ | ||
+ | * [[https:// | ||
+ | |||
+ | <code java> | ||
+ | |||
+ | class MyClass4 { | ||
+ | |||
+ | private static final Boolean enabled = Boolean.FALSE; | ||
+ | |||
+ | public static Boolean getEnabled() { | ||
+ | return enabled; | ||
+ | } | ||
+ | } | ||
+ | |||
+ | // " | ||
+ | Field field = MyClass4.class.getDeclaredField(" | ||
+ | field.setAccessible(true); | ||
+ | |||
+ | // " | ||
+ | Field modifiersField = Field.class.getDeclaredField(" | ||
+ | modifiersField.setAccessible(true); | ||
+ | modifiersField.setInt(field, | ||
+ | |||
+ | // 값 읽기 | ||
+ | Boolean fieldValue = (Boolean) field.get(null); | ||
+ | System.out.println(fieldValue); | ||
+ | |||
+ | // 값 쓰기 | ||
+ | field.set(null, | ||
+ | System.out.println(MyClass4.getEnabled()); | ||
+ | </ | ||
+ |