Caller Sensitive MethodsΒΆ

The following methods use the caller sensitive (as of JDK 12):

  • java.io.ObjectStreamClass.forClass

  • java.io.ObjectStreamField.getType

  • java.lang.Class.forName

  • java.lang.Class.newInstance

  • java.lang.Class.getClassLoader

  • java.lang.Class.getEnclosingMethod

  • java.lang.Class.getEnclosingConstructor

  • java.lang.Class.getDeclaringClass

  • java.lang.Class.getEnclosingClass

  • java.lang.Class.getClasses

  • java.lang.Class.getFields

  • java.lang.Class.getMethods

  • java.lang.Class.getConstructor

  • java.lang.Class.getConstructors

  • java.lang.Class.getField

  • java.lang.Class.getMethod

  • java.lang.Class.getDeclaredClasses

  • java.lang.Class.getDeclaredField

  • java.lang.Class.getDeclaredFields

  • java.lang.Class.getDeclaredMethod

  • java.lang.Class.getDeclaredMethods

  • java.lang.Class.getDeclaredConstructor

  • java.lang.Class.getDeclaredConstructors

  • java.lang.Class.getResource

  • java.lang.Class.getResourceAsStream

  • java.lang.Class.getNestHost

  • java.lang.Class.getNestMembers

  • java.lang.ClassLoader.getParent

  • java.lang.ClassLoader.getPlatformClassLoader

  • java.lang.invoke,MethodHandleProxies.asInterfaceInstance

  • java.lang.invoke.MethodHandles.lookup

  • java.lang.Module.addReads

  • java.lang.Module.addExports

  • java.lang.Module.addOpens

  • java.lang.Module.addUses

  • java.lang.Module.getResourceAsStream

  • java.lang.Package.getPackage

  • java.lang.Package.getPackages

  • java.lang.reflect.AccessibleObject.setAccessible

  • java.lang.reflect.AccessibleObject.setAccessible

  • java.lang.reflect.AccessibleObject.trySetAccessible

  • java.lang.reflect.AccessibleObject.canAccess

  • java.lang.reflect.Constructor.setAccessible

  • java.lang.reflect.Constructor.newInstance

  • java.lang.reflect.Field.setAccessible

  • java.lang.reflect.Field.get

  • java.lang.reflect.Field.getBoolean

  • java.lang.reflect.Field.getByte

  • java.lang.reflect.Field.getChar

  • java.lang.reflect.Field.getShort

  • java.lang.reflect.Field.getInt

  • java.lang.reflect.Field.getLong

  • java.lang.reflect.Field.getFloat

  • java.lang.reflect.Field.getDouble

  • java.lang.reflect.Field.set

  • java.lang.reflect.Field.setBoolean

  • java.lang.reflect.Field.setByte

  • java.lang.reflect.Field.setChar

  • java.lang.reflect.Field.setShort

  • java.lang.reflect.Field.setInt

  • java.lang.reflect.Field.setLong

  • java.lang.reflect.Field.setFloat

  • java.lang.reflect.Field.setDouble

  • java.lang.reflect.Method.setAccessible

  • java.lang.reflect.Method.invoke

  • java.lang.reflect.Proxy.getProxyClass

  • java.lang.reflect.Proxy.newProxyInstance

  • java.lang.reflect.Proxy.getInvocationHandler

  • java.lang.Runtime.load

  • java.lang.Runtime.loadLibrary

  • java.lang.StackWalker.walk

  • java.lang.StackWalker.forEach

  • java.lang.StackWalker.getCallerClass

  • java.lang.System.getLogger

  • java.lang.System.getLogger

  • java.lang.System.load

  • java.lang.System.loadLibrary

  • java.lang.Thread.getContextClassLoader

  • java.security.AccessController.doPrivileged

  • java.security.AccessController.doPrivilegedWithCombiner

  • java.util.concurrent.atomic.AtomicIntegerFieldUpdater.newUpdater

  • java.util.concurrent.atomic.AtomicLongFieldUpdater.newUpdater

  • java.util.concurrent.atomic.AtomicReferenceFieldUpdater.newUpdater

  • java.util.ResourceBundle.getBundle

  • java.util.ResourceBundle.clearCache

  • java.util.ServiceLoader.load

  • java.util.ServiceLoader.loadInstalled

  • java.util.logging.Logger.getLogger

  • java.util.logging.Logger.getLogger

  • java.util.logging.Logger.getAnonymousLogger

  • java.sql.DriverManager.getConnection

  • java.sql.DriverManager.getDriver

  • java.sql.DriverManager.deregisterDriver

  • java.sql.DriverManager.getDrivers