124 |
public abstract class ClassLoader |
public abstract class ClassLoader |
125 |
{ |
{ |
126 |
/** |
/** |
127 |
* All classes loaded by this classloader. VM's may choose to implement |
* All classes loaded by this classloader. If the VM's chooses to implement |
128 |
* this cache natively; but it is here available for use if necessary. It |
* this cache natively this field will be null. |
129 |
* is not private in order to allow native code (and trusted subclasses) |
* It is not private in order to allow VMClassLoader access to this field. |
|
* access to this field. |
|
130 |
*/ |
*/ |
131 |
final HashMap loadedClasses = new HashMap(); |
final HashMap loadedClasses = |
132 |
|
VMClassLoader.USE_VM_CACHE ? null : new HashMap(); |
133 |
|
|
134 |
/** |
/** |
135 |
* All packages defined by this classloader. It is not private in order to |
* All packages defined by this classloader. It is not private in order to |
479 |
|
|
480 |
Class retval = VMClassLoader.defineClass(this, name, data, |
Class retval = VMClassLoader.defineClass(this, name, data, |
481 |
offset, len, domain); |
offset, len, domain); |
482 |
loadedClasses.put(retval.getName(), retval); |
if (! VMClassLoader.USE_VM_CACHE) |
483 |
|
loadedClasses.put(retval.getName(), retval); |
484 |
return retval; |
return retval; |
485 |
} |
} |
486 |
|
|