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 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.
Interfaces
AnnotatedElement |
Represents an annotated element of the program currently running in this
VM. |
GenericArrayType |
GenericArrayType represents an array type whose component
type is either a parameterized type or a type variable. |
GenericDeclaration |
A common interface for all entities that declare type variables. |
InvocationHandler |
InvocationHandler is the interface implemented by
the invocation handler of a proxy instance. |
Member |
Member is an interface that reflects identifying information about
a single member (a field or a method) or a constructor. |
ParameterizedType |
ParameterizedType represents a parameterized type such as
Collection<String>. |
Type |
Type is the common superinterface for all types in the Java
programming language. |
WildcardType |
WildcardType represents a wildcard type expression, such as
? , ? extends Number , or ? super Integer . |
Classes
AccessibleObject |
The AccessibleObject class is the base class for Field, Method and
Constructor objects. |
Array |
The Array 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. |
Executable |
A shared superclass for the common functionality of Method
and Constructor . |
Field |
A Field provides information about, and dynamic access to, a
single field of a class or an interface. |
Method |
A Method provides information about, and access to, a single method
on a class or interface. |
Modifier |
The Modifier class provides static methods and
constants to decode class and member access modifiers. |
Proxy |
Proxy provides static methods for creating dynamic proxy
classes and instances, and it is also the superclass of all
dynamic proxy classes created by those methods. |
ReflectPermission |
Legacy security code; do not use. |
Exceptions
InvocationTargetException |
InvocationTargetException is a checked exception that wraps
an exception thrown by an invoked method or constructor. |
MalformedParameterizedTypeException |
Thrown when a semantically malformed parameterized type is
encountered by a reflective method that needs to instantiate it. |
UndeclaredThrowableException |
Thrown by a method invocation on a proxy instance if its invocation
handler's invoke method throws a
checked exception (a Throwable that is not assignable
to RuntimeException or Error ) that
is not assignable to any of the exception types declared in the
throws clause of the method that was invoked on the
proxy instance and dispatched to the invocation handler. |
Errors
GenericSignatureFormatError |
Thrown when a syntactically malformed signature attribute is
encountered by a reflective method that needs to interpret the
generic signature information for a type, method or constructor. |