URLClassLoader 类

定义

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

[Android.Runtime.Register("java/net/URLClassLoader", DoNotGenerateAcw=true)]
public class URLClassLoader : Java.Security.SecureClassLoader, IDisposable, Java.Interop.IJavaPeerable, Java.IO.ICloseable
[<Android.Runtime.Register("java/net/URLClassLoader", DoNotGenerateAcw=true)>]
type URLClassLoader = class
    inherit SecureClassLoader
    interface ICloseable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
继承
属性
实现

注解

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。 假定以“/”结尾的任何 URL 都引用目录。 否则,假定 URL 引用将根据需要打开的 JAR 文件。

创建 URLClassLoader 实例的线程的 AccessControlContext 将在随后加载类和资源时使用。

默认情况下,加载的类仅授予访问创建 URLClassLoader 时指定的 URL 的权限。

已在 1.2 中添加。

Java文档java.net.URLClassLoader

本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。

构造函数

名称 说明
URLClassLoader(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

URLClassLoader(URL[], ClassLoader, IURLStreamHandlerFactory)

为指定的 URL、父类加载程序和 URLStreamHandlerFactory 构造新的 URLClassLoader。

URLClassLoader(URL[], ClassLoader)

为给定 URL 构造新的 URLClassLoader。

URLClassLoader(URL[])

使用默认委派父 ClassLoader级为指定的 URL 构造新的 URLClassLoader。

属性

名称 说明
Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
JniIdentityHashCode

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
JniPeerMembers

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

Parent

返回委托的父类加载程序。

(继承自 ClassLoader)
PeerReference

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
ThresholdClass

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

方法

名称 说明
AddURL(URL)

将指定的 URL 追加到 URL 列表中,以搜索类和资源。

ClearAssertionStatus()

将此类加载程序的默认断言状态设置为 false 并放弃与类加载程序关联的任何包默认值或类断言状态设置。

(继承自 ClassLoader)
Clone()

创建并返回此对象的副本。

(继承自 Object)
Close()

关闭此 URLClassLoader,以便不再可用于加载此加载程序定义的新类或资源。

DefineClass(Byte[], Int32, Int32)
已过时.

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

(继承自 ClassLoader)
DefineClass(String, Byte[], Int32, Int32, CodeSource)

使用可选的 CodeSource 将字节数组转换为类实例。

(继承自 SecureClassLoader)
DefineClass(String, Byte[], Int32, Int32, ProtectionDomain)

将字节数组转换为具有给定ProtectionDomain的类Class实例。

(继承自 ClassLoader)
DefineClass(String, Byte[], Int32, Int32)

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

(继承自 ClassLoader)
DefineClass(String, ByteBuffer, CodeSource)

使用可选的 CodeSource 将 a java.nio.ByteBuffer ByteBuffer 转换为类 Class的实例。

(继承自 SecureClassLoader)
DefineClass(String, ByteBuffer, ProtectionDomain)

将 a java.nio.ByteBuffer ByteBuffer 转换为具有给定ProtectionDomain的类Class的实例。

(继承自 ClassLoader)
DefinePackage(String, Manifest, URL)

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

DefinePackage(String, String, String, String, String, String, String, URL)

在此 ClassLoader中按名称定义包。

(继承自 ClassLoader)
Dispose()

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
Dispose(Boolean)

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
Equals(Object)

指示其他对象是否“等于”此对象。

(继承自 Object)
FindClass(String)

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

(继承自 ClassLoader)
FindLibrary(String)

返回本机库的绝对路径名称。

(继承自 ClassLoader)
FindLoadedClass(String)

如果Java虚拟机将此加载程序记录为具有该二进制名称的类的启动加载程序,则返回具有给定二进制名称的类。

(继承自 ClassLoader)
FindResource(String)

在 URL 搜索路径上查找具有指定名称的资源。

FindResources(String)

返回一个 URL 枚举,该枚举表示具有指定名称的 URL 搜索路径上的所有资源。

FindSystemClass(String)

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

(继承自 ClassLoader)
GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
GetPackage(String)

在此类加载程序及其上级中按名称查找包。

(继承自 ClassLoader)
GetPackages()

返回已由此类加载程序及其祖先定义的所有 Packages。

(继承自 ClassLoader)
GetPermissions(CodeSource)

返回给定 CodeSource 对象的权限。

(继承自 SecureClassLoader)
GetResource(String)

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

(继承自 ClassLoader)
GetResourceAsStream(String)

返回用于读取指定资源的输入流。

(继承自 ClassLoader)
GetResources(String)

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

(继承自 ClassLoader)
GetURLs()

返回用于加载类和资源的 URL 的搜索路径。

JavaFinalize()

当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。

(继承自 Object)
LoadClass(String, Boolean)

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

(继承自 ClassLoader)
LoadClass(String)

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

(继承自 ClassLoader)
LoadClassAsync(String, Boolean)

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 ClassLoader)
LoadClassAsync(String)

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 ClassLoader)
NewInstance(URL[], ClassLoader)

为指定的 URL 和父类加载程序创建 URLClassLoader 的新实例。

NewInstance(URL[])

为指定的 URL 和默认父类加载程序创建 URLClassLoader 的新实例。

Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
ResolveClass(Class)

链接指定类。

(继承自 ClassLoader)
SetClassAssertionStatus(String, Boolean)

设置此类加载程序中命名顶级类的所需断言状态及其包含的任何嵌套类。

(继承自 ClassLoader)
SetDefaultAssertionStatus(Boolean)

设置此类加载程序的默认断言状态。

(继承自 ClassLoader)
SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
SetPackageAssertionStatus(String, Boolean)

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

(继承自 ClassLoader)
SetSigners(Class, Object[])

设置类的签名者。

(继承自 ClassLoader)
ToArray<T>()

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em< 或 >em<interrupted>/em<。><>

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)

显式接口实现

名称 说明
IJavaPeerable.Disposed()

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
IJavaPeerable.Finalized()

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

(继承自 Object)

扩展方法

名称 说明
GetJniTypeName(IJavaPeerable)

获取实例 self类型的 JNI 名称。

JavaAs<TResult>(IJavaPeerable)

尝试强制self键入TResult,检查强制是否在Java端有效。

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

此类加载程序用于从引用 JAR 文件和目录的 URL 的搜索路径加载类和资源。

TryJavaCast<TResult>(IJavaPeerable, TResult)

尝试强制self键入TResult,检查强制是否在Java端有效。

适用于