class DynamicClassLoader
extends java.lang.ClassLoader
| Modifier and Type | Field and Description |
|---|---|
private static java.lang.String |
BEAN_AC |
private static java.lang.Class<?>[] |
DEF_CLASS_SIG
Predefined define defineClass method signature (name, bytes, offset,
length)
|
| Constructor and Description |
|---|
DynamicClassLoader(java.lang.ClassLoader parent) |
| Modifier and Type | Method and Description |
|---|---|
(package private) java.lang.Class<?> |
defineClass(java.lang.String name,
byte[] bytes)
Call defineClass into the parent classLoader using the
method.setAccessible(boolean) hack
|
static <T> T |
directInstance(java.lang.Class<? extends T> parent,
java.lang.String clsName,
byte[] clsData) |
static <T> java.lang.Class<T> |
directLoad(java.lang.Class<? extends T> parent,
java.lang.String clsName,
byte[] clsData) |
protected java.lang.Class<?> |
loadClass(java.lang.String name,
boolean resolve) |
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findResources, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getProtectionDomainInternal, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSignersprivate static final java.lang.String BEAN_AC
private static final java.lang.Class<?>[] DEF_CLASS_SIG
public static <T> java.lang.Class<T> directLoad(java.lang.Class<? extends T> parent,
java.lang.String clsName,
byte[] clsData)
parent - used to choose the ClassLoaderclsName - CclsData - public static <T> T directInstance(java.lang.Class<? extends T> parent,
java.lang.String clsName,
byte[] clsData)
throws java.lang.InstantiationException,
java.lang.IllegalAccessException
java.lang.InstantiationExceptionjava.lang.IllegalAccessExceptionprotected java.lang.Class<?> loadClass(java.lang.String name,
boolean resolve)
throws java.lang.ClassNotFoundException
loadClass in class java.lang.ClassLoaderjava.lang.ClassNotFoundExceptionjava.lang.Class<?> defineClass(java.lang.String name,
byte[] bytes)
throws java.lang.ClassFormatError
java.lang.ClassFormatErrorClassLoader.defineClass(String, byte[], int, int)