Home | History | Annotate | Download | only in reflect
      1 <html>
      2 <body>
      3 Runtime Behavioral Reflection.
      4 
      5 <p>(also recently known as interceptors or AOP?)
      6 
      7 <p>This package enables a metaobject to trap method calls and field
      8 accesses  on a regular Java object.  It provides a class
      9 <code>Reflection</code>, which is a main module for implementing
     10 runtime behavioral reflection.
     11 It also provides
     12 a class <code>Loader</code> and <code>Compiler</code>
     13 as utilities for dynamically or statically
     14 translating a regular class into a reflective class.
     15 
     16 <p>An instance of the reflective class is associated with
     17 a runtime metaobject and a runtime class metaobject, which control
     18 the behavior of that instance.
     19 The runtime
     20 metaobject is created for every (base-level) instance but the
     21 runtime class metaobject is created for every (base-level) class.
     22 <code>Metaobject</code> is the root class of the runtime
     23 metaobject and <code>ClassMetaobject</code> is the root class
     24 of the runtime class metaobject.
     25 
     26 <p>This package is provided as a sample implementation of the
     27 reflection mechanism with Javassist.  All the programs in this package
     28 uses only the regular Javassist API; they never call any hidden
     29 methods.
     30 
     31 <p>The most significant class in this package is <code>Reflection</code>.
     32 See the description of this class first.
     33 
     34 </body>
     35 </html>
     36