Top Description Interfaces Classes
[default module]

Package javassist.tools.reflect


Runtime Behavioral Reflection.

(also recently known as interceptors or AOP?)

This package enables a metaobject to trap method calls and field accesses on a regular Java object. It provides a class Reflection, which is a main module for implementing runtime behavioral reflection. It also provides a class Loader and Compiler as utilities for dynamically or statically translating a regular class into a reflective class.

An instance of the reflective class is associated with a runtime metaobject and a runtime class metaobject, which control the behavior of that instance. The runtime metaobject is created for every (base-level) instance but the runtime class metaobject is created for every (base-level) class. Metaobject is the root class of the runtime metaobject and ClassMetaobject is the root class of the runtime class metaobject.

This package is provided as a sample implementation of the reflection mechanism with Javassist. All the programs in this package uses only the regular Javassist API; they never call any hidden methods.

The most significant class in this package is Reflection. See the description of this class first.

Interface Summary

Modifier and TypeInterface and Description
public interface
Metalevel

An interface to access a metaobject and a class metaobject.

Class Summary

Modifier and TypeClass and Description
public class
CannotCreateException

Signals that ClassMetaobject.newInstance() fails.

public class
CannotInvokeException

Thrown when method invocation using the reflection API has thrown an exception.

public class
CannotReflectException

Thrown by makeReflective() in Reflection when there is an attempt to reflect a class that is either an interface or a subclass of either ClassMetaobject or Metaobject.

public class
ClassMetaobject

A runtime class metaobject.

pack-priv class
public class
Compiler

A bytecode translator for reflection.

public class
Loader

A class loader for reflection.

public class
Metaobject

A runtime metaobject.

public class
Reflection

The class implementing the behavioral reflection mechanism.

public class
Sample

A template used for defining a reflective class.