Package com.google.gson.internal.reflect
Class ReflectionAccessor
java.lang.Object
com.google.gson.internal.reflect.ReflectionAccessor
Provides a replacement for
AccessibleObject.setAccessible(boolean)
, which may be used to
avoid reflective access issues appeared in Java 9, like InaccessibleObjectException
thrown or warnings like
WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by ...Works both for Java 9 and earlier Java versions.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ReflectionAccessor
Obtains aReflectionAccessor
instance suitable for the current Java version.abstract void
Does the same asao.setAccessible(true)
, but never throwsInaccessibleObjectException
-
Constructor Details
-
ReflectionAccessor
public ReflectionAccessor()
-
-
Method Details
-
makeAccessible
Does the same asao.setAccessible(true)
, but never throwsInaccessibleObjectException
-
getInstance
Obtains aReflectionAccessor
instance suitable for the current Java version.You may need one a reflective operation in your code throws
InaccessibleObjectException
. In such a case, usemakeAccessible(AccessibleObject)
on a field, method or constructor (instead of basicAccessibleObject.setAccessible(boolean)
).
-