Top Interfaces Annotations Classes
module java.base

Package jdk.internal.reflect


Interface Summary

Modifier and TypeInterface and Description
pack-priv interface
ByteVector

A growable array of bytes.

pack-priv interface
ClassFileConstants

Minimal set of class file constants for assembly of field and method accessors.

public interface
ConstructorAccessor

This interface provides the declaration for java.lang.reflect.Constructor.invoke().

public interface
FieldAccessor

This interface provides the declarations for the accessor methods of java.lang.reflect.Field.

public interface
MethodAccessor

This interface provides the declaration for java.lang.reflect.Method.invoke().

Annotation Summary

Modifier and TypeAnnotation and Description
public @interface
CallerSensitive

A method annotated @CallerSensitive is sensitive to its calling class, via Reflection.getCallerClass, or via some equivalent.

public @interface
CallerSensitiveAdapter

A method annotated @CallerSensitiveAdapter is an adapter method corresponding to a caller-sensitive method, which is annotated with @CallerSensitive.

Class Summary

Modifier and TypeClass and Description
pack-priv class
AccessorGenerator

Shared functionality for all accessor generators

public class
AccessorUtils

Utility methods used by DirectMethodHandleAccessor and DirectConstructorHandleAccessor

pack-priv class
pack-priv class
pack-priv class
ClassDefiner

Utility class which assists in calling defineClass() by creating a new class loader which delegates to the one needed in order for proper resolution of the given bytecodes to occur.

pack-priv class
public class
ConstantPool

Provides reflective access to the constant pools of classes.

pack-priv abstract class
ConstructorAccessorImpl

Package-private implementation of the ConstructorAccessor interface which has access to all classes and all fields, regardless of language restrictions.

pack-priv class
CsMethodAccessorAdapter

MethodAccessor adapter for caller-sensitive methods which have an alternate non-CSM method with the same method name but an additional caller class argument.

pack-priv class
pack-priv class
pack-priv class
pack-priv abstract class
FieldAccessorImpl

Package-private implementation of the FieldAccessor interface which has access to all classes and all fields, regardless of language restrictions.

pack-priv class
InstantiationExceptionConstructorAccessorImpl

Throws an InstantiationException with given error message upon newInstance() call

pack-priv class
Label

Allows forward references in bytecode streams emitted by ClassFileAssembler.

pack-priv class
MagicAccessorImpl

MagicAccessorImpl (named for parity with FieldAccessorImpl and others, not because it actually implements an interface) is a marker class in the hierarchy.

pack-priv abstract class
MethodAccessorImpl

Package-private implementation of the MethodAccessor interface which has access to all classes and all fields, regardless of language restrictions.

pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv abstract class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
pack-priv class
public class
Reflection

Common utility routines used by both java.lang and java.lang.reflect

public class
ReflectionFactory

The master factory for all reflective objects, both those in java.lang.reflect (Fields, Methods, Constructors) as well as their delegates (FieldAccessors, MethodAccessors, ConstructorAccessors).

pack-priv class
SerializationConstructorAccessorGenerator

Generator for jdk.internal.reflect.SerializationConstructorAccessorImpl objects using bytecodes to implement a constructor for serialization returned by ReflectionFactory::newConstructorForSerialization.

pack-priv abstract class
SerializationConstructorAccessorImpl

Java serialization (in java.io) expects to be able to instantiate a class and invoke a no-arg constructor of that class's first non-Serializable superclass.