org.codehaus.janino
public abstract class IClassLoader extends Object
Constructor Summary | |
---|---|
IClassLoader(IClassLoader optionalParentIClassLoader) |
Method Summary | |
---|---|
protected void | defineIClass(IClass iClass)
Define an IClass in the context of this IClassLoader.
|
protected abstract IClass | findIClass(String descriptor) |
IClass | loadIClass(String fieldDescriptor)
Get an IClass by field descriptor.
|
protected void | postConstruct()
This method must be called by the constructor of the directly derived
class. |
This method should only be called from an implementation of findIClass.
Throws: RuntimeException A different IClass object is already defined for this type
null
if a class
for that descriptor
could not be found.
Similar java.lang.ClassLoader#findClass(java.lang.String), this method must
The format of a descriptor
is defined in JVMS 4.3.2. Typical
descriptors are:
I
(Integer)
Lpkg1/pkg2/Cls;
(Class declared in package)
Lpkg1/pkg2/Outer$Inner;
Member class
Notice that this method is never called from more than one thread at a time. In other words, implementations of this method need not be synchronized.
Returns: null
if a class with that descriptor could not be found
Throws: ClassNotFoundException if an exception was raised while loading the class
Returns: null
if an IClass could not be loaded
UNKNOWN: ClassNotFoundException if an exception was raised while loading the IClass