Module java.base
Package java.lang.reflect
package java.lang.reflect
Provides classes and interfaces for obtaining reflective information about
classes and objects. Reflection allows programmatic access to information
about the fields, methods and constructors of loaded classes, and the use
of reflected fields, methods, and constructors to operate on their underlying
counterparts, within encapsulation and security restrictions.
AccessibleObject
allows suppression of access checks if
the necessary ReflectPermission
is available.
Array
provides static methods to dynamically create and
access arrays.
Classes in this package, along with java.lang.Class
accommodate applications such as debuggers, interpreters, object
inspectors, class browsers, and services such as Object
Serialization and JavaBeans that need access to either the public
members of a target object (based on its runtime class) or the
members declared by a given class.
- Since:
- 1.1
-
InterfaceDescription
AnnotatedArrayType
represents the potentially annotated use of an array type, whose component type may itself represent the annotated use of a type.Represents an annotated construct of the program currently running in this VM.AnnotatedParameterizedType
represents the potentially annotated use of a parameterized type, whose type arguments may themselves represent annotated uses of types.AnnotatedType
represents the potentially annotated use of a type in the program currently running in this VM.AnnotatedTypeVariable
represents the potentially annotated use of a type variable, whose declaration may have bounds which themselves represent annotated uses of types.AnnotatedWildcardType
represents the potentially annotated use of a wildcard type argument, whose upper or lower bounds may themselves represent annotated uses of types.GenericArrayType
represents an array type whose component type is either a parameterized type or a type variable.A common interface for all entities that declare type variables.InvocationHandler
is the interface implemented by the invocation handler of a proxy instance.Member is an interface that reflects identifying information about a single member (a field or a method) or a constructor.ParameterizedType represents a parameterized type such asCollection<String>
.Type is the common superinterface for all types in the Java programming language.TypeVariable<D extends GenericDeclaration>TypeVariable is the common superinterface for type variables of kinds.WildcardType represents a wildcard type expression, such as?
,? extends Number
, or? super Integer
. -
ClassDescriptionThe
AccessibleObject
class is the base class forField
,Method
, andConstructor
objects (known as reflected objects).TheArray
class provides static methods to dynamically create and access Java arrays.Constructor<T>Constructor
provides information about, and access to, a single constructor for a class.A shared superclass for the common functionality ofMethod
andConstructor
.AField
provides information about, and dynamic access to, a single field of a class or an interface.AMethod
provides information about, and access to, a single method on a class or interface.The Modifier class providesstatic
methods and constants to decode class and member access modifiers.Information about method parameters.Proxy
provides static methods for creating objects that act like instances of interfaces but allow for customized method invocation.ARecordComponent
provides information about, and dynamic access to, a component of a record class.The Permission class for reflective operations. -
ExceptionDescriptionThrown when Java language access checks cannot be suppressed.InvocationTargetException is a checked exception that wraps an exception thrown by an invoked method or constructor.Thrown when a semantically malformed parameterized type is encountered by a reflective method that needs to instantiate it.Thrown when
the java.lang.reflect package
attempts to read method parameters from a class file and determines that one or more parameters are malformed.Thrown by a method invocation on a proxy instance if its invocation handler'sinvoke
method throws a checked exception (aThrowable
that is not assignable toRuntimeException
orError
) that is not assignable to any of the exception types declared in thethrows
clause of the method that was invoked on the proxy instance and dispatched to the invocation handler. -
ErrorDescriptionThrown when a syntactically malformed signature attribute is encountered by a reflective method that needs to interpret the generic signature information for a class or interface, method or constructor.