Używam adnotacji do dynamicznego ustawiania wartości pól w klasach. Ponieważ chcę to zrobić niezależnie od tego, czy jest to publiczne, chronione czy prywatne, za setAccessible(true)
każdym razem przed wywołaniem set()
metody wywołuję obiekt Field . Moje pytanie brzmi: jaki wpływ ma to setAccessible()
wezwanie na samo pole?
Mówiąc dokładniej, powiedzmy, że jest to pole prywatne i ten zestaw wywołań kodu setAccessible(true)
. Gdyby jakieś inne miejsce w kodzie miało następnie pobrać to samo pole poprzez refleksję, czy to pole byłoby już dostępne? A może metody getDeclaredFields()
i getDeclaredField()
zwracają za każdym razem nowe wystąpienia obiektu Field?
Wydaje mi się, że innym sposobem zadawania pytania jest to, że jeśli zadzwonię setAccessible(true)
, jak ważne jest, aby przywrócić pierwotną wartość po zakończeniu?