forked from JavaDevTeam/notes
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathjava-lang-ClassLoader.java
More file actions
65 lines (46 loc) · 2.25 KB
/
java-lang-ClassLoader.java
File metadata and controls
65 lines (46 loc) · 2.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
------------------------
ClassLoader |
------------------------
# 类加载器, 是一个抽象类
# 构造函数
protected ClassLoader()
protected ClassLoader(ClassLoader parent)
# 静态方法
protected static boolean registerAsParallelCapable()
protected final void resolveClass(Class<?> c)
public static ClassLoader getSystemClassLoader()
public static URL getSystemResource(String name)
public static InputStream getSystemResourceAsStream(String name)
public static Enumeration<URL> getSystemResources(String name)
# 实例函数
@Deprecated
protected final Class<?> defineClass(byte[] b, int off, int len)
protected final Class<?> defineClass(String name, byte[] b, int off, int len)
protected final Class<?> defineClass(String name, byte[] b, int off, int len,ProtectionDomain protectionDomain)
protected final Class<?> defineClass(String name, java.nio.ByteBuffer b, ProtectionDomain protectionDomain)
* 根据字节数据创建一个类
protected Class<?> findClass(String name)
* 空的方法, 自己实现的加载器建议覆写该方法
protected Class<?> loadClass(String name, boolean resolve)
public Class<?> loadClass(String name)
* 加载方法
name 类方法名称
resolve 是否解析初始化类
protected Package definePackage(String name, String specTitle,String specVersion, String specVendor, String implTitle, String implVersion,String implVendor, URL sealBase)
protected String findLibrary(String libname)
protected final Class<?> findLoadedClass(String name)
protected URL findResource(String name)
protected Enumeration<URL> findResources(String name)
protected final Class<?> findSystemClass(String name)
protected Object getClassLoadingLock(String className
protected Package getPackage(String name)
protected Package[] getPackages()
protected final void setSigners(Class<?> c, Object[] signers)
public void clearAssertionStatus()
public final ClassLoader getParent()
public URL getResource(String name)
public InputStream getResourceAsStream(String name)
public Enumeration<URL> getResources(String name)
public void setClassAssertionStatus(String className, boolean enabled)
public void setDefaultAssertionStatus(boolean enabled)
public void setPackageAssertionStatus(String packageName, boolean enabled)