Java.lang.ClassLoader 类

简介

java.lang.ClassLoader 类是负责加载类的对象。 这个类是一个抽象类。 安全管理员可以使用它来指示安全域。


类声明

以下是 java.lang.ClassLoader 类的声明 −

public abstract class ClassLoader
   extends Object

类构造函数

序号 构造函数 & 描述
1

protected ClassLoader()

这将使用 getSystemClassLoader() 方法返回的 ClassLoader 作为父类加载器创建一个新的类加载器。

2

protected ClassLoader(ClassLoader parent)

这将创建一个新的类加载器,使用指定的父类加载器进行委托。


类方法

序号 方法 & 描述
1 void clearAssertionStatus()

此方法将此类加载器的默认断言状态设置为 false,并丢弃与类加载器关联的任何包默认值或类断言状态设置。

2

protected Class<?> defineClass(String name, byte[] b, int off, int len)

此方法将字节数组转换为 Class 类的实例。

3

protected Class<?> defineClass(String name, byte[] b, int off, int len, ProtectionDomain protectionDomain)

此方法将字节数组转换为 Class 类的实例,带有可选的 ProtectionDomain

4

protected Class<?> defineClass(String name, ByteBuffer b, ProtectionDomain protectionDomain)

此方法将 ByteBuffer 转换为 Class 类的实例,带有可选的 ProtectionDomain。

5

protected Package definePackage(String name, String specTitle, String specVersion, String specVendor, String implTitle, String implVersion, String implVendor, URL sealBase)

此方法在此 ClassLoader 中按名称定义一个包。

6

protected Class<?> findClass(String name)

此方法查找具有指定二进制名称的类。

7

protected String findLibrary(String libname)

该方法返回原生库的绝对路径名。

8

protected Class<?> findLoadedClass(String name)

如果 Java 虚拟机将此加载器记录为具有该二进制名称的类的初始加载器,则此方法返回具有给定二进制名称的类。

9

protected URL findResource(String name)

此方法查找具有给定名称的资源。

10

protected Enumeration<URL> findResources(String name)

此方法返回一个 URL 对象的枚举,表示具有给定名称的所有资源。

11

protected Class<?> findSystemClass(String name)

此方法查找具有指定二进制名称的类,并在必要时加载它。

12

protected Package getPackage(String name)

此方法返回已由此类加载器或其任何祖先定义的包。

13

protected Package[] getPackages()

此方法返回由此类加载器及其祖先定义的所有包。

14 ClassLoader getParent()

此方法返回用于委托的父类加载器。

15 URL getResource(String name)

此方法查找具有给定名称的资源。

16 InputStream getResourceAsStream(String name)

该方法返回一个用于读取指定资源的输入流。

17

Enumeration<URL> getResources(String name)

此方法查找具有给定名称的所有资源。

18

static ClassLoader getSystemClassLoader()

该方法返回系统类加载器进行委托。

19 static URL getSystemResource(String name)

此方法从用于加载类的搜索路径中查找指定名称的资源。

20 static InputStream getSystemResourceAsStream(String name)

该方法是开放读取的,用于加载类的搜索路径中指定名称的资源。

21

static Enumeration<URL> getSystemResources(String name)

此方法从用于加载类的搜索路径中查找指定名称的所有资源。

22

Class<?> loadClass(String name)

此方法加载具有指定二进制名称的类。

23

protected Class<?> loadClass(String name, boolean resolve)

此方法加载具有指定二进制名称的类。

24

protected void resolveClass(Class<?> c)

该方法链接指定的类。

25 void setClassAssertionStatus(String className, boolean enabled)

此方法为此类加载器中的命名顶级类以及其中包含的任何嵌套类设置所需的断言状态。

26 void setDefaultAssertionStatus(boolean enabled)

此方法设置此类加载器的默认断言状态。

27 void setPackageAssertionStatus(String packageName, boolean enabled)

此方法设置命名包的包默认断言状态。

28

protected void setSigners(Class<?> c, Object[] signers)

此方法设置类的签名者。


继承的方法

这个类继承了以下类的方法 −

  • java.lang.Object