|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
java.lang.Objectjava.rmi.server.RMIClassLoaderSpi
public abstract class RMIClassLoaderSpi
RMIClassLoaderSpi 是 RMIClassLoader 的服务提供者接口。尤其是,RMIClassLoaderSpi 接口提供 RMIClassLoader 的以下静态方法的实现:
RMIClassLoader.loadClass(URL,String)
RMIClassLoader.loadClass(String,String)
RMIClassLoader.loadClass(String,String,ClassLoader)
RMIClassLoader.loadProxyClass(String,String[],ClassLoader)
RMIClassLoader.getClassLoader(String)
RMIClassLoader.getClassAnnotation(Class)
RMIClassLoader 文档。
RMIClassLoader| 构造方法摘要 | |
|---|---|
RMIClassLoaderSpi()
|
|
| 方法摘要 | |
|---|---|
abstract String |
getClassAnnotation(Class<?> cl)
提供 RMIClassLoader.getClassAnnotation(Class) 的实现。 |
abstract ClassLoader |
getClassLoader(String codebase)
提供 RMIClassLoader.getClassLoader(String) 的实现。 |
abstract Class<?> |
loadClass(String codebase,
String name,
ClassLoader defaultLoader)
提供 RMIClassLoader.loadClass(URL,String)、RMIClassLoader.loadClass(String,String) 和 RMIClassLoader.loadClass(String,String,ClassLoader) 的实现。 |
abstract Class<?> |
loadProxyClass(String codebase,
String[] interfaces,
ClassLoader defaultLoader)
提供 RMIClassLoader.loadProxyClass(String,String[],ClassLoader) 的实现。 |
| 从类 java.lang.Object 继承的方法 |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| 构造方法详细信息 |
|---|
public RMIClassLoaderSpi()
| 方法详细信息 |
|---|
public abstract Class<?> loadClass(String codebase,
String name,
ClassLoader defaultLoader)
throws MalformedURLException,
ClassNotFoundException
RMIClassLoader.loadClass(URL,String)、RMIClassLoader.loadClass(String,String) 和 RMIClassLoader.loadClass(String,String,ClassLoader) 的实现。选用提供的加载程序,从代码基 URL 路径加载某个类。
通常,提供者实现将试图先使用给定的 defaultLoader(如果指定)解析指定的类,然后才试图从代码基 URL 路径解析该类。
此方法的实现必须返回具有给定名称的一个类,或抛出异常。
codebase - 要从其加载类的 URL 的列表(由空格分隔),或者为 nullname - 要加载的类名称defaultLoader - 要使用的其他上下文类加载器,或 null
Class 对象
MalformedURLException - 如果 codebase 为非 null 且包含一个无效 URL,或者如果 codebase 为 null 且用于加载类的特定于提供者的 URL 无效。
ClassNotFoundException - 如果在指定位置无法找到该类的定义
public abstract Class<?> loadProxyClass(String codebase,
String[] interfaces,
ClassLoader defaultLoader)
throws MalformedURLException,
ClassNotFoundException
RMIClassLoader.loadProxyClass(String,String[],ClassLoader) 的实现。选用提供的加载器,从代码基 URL 路径加载实现一组具有给定名称接口集的动态代理类(请参阅 Proxy)。
此方法的实现必须能返回一个实现指定接口的代理类,或抛出异常。
codebase - 要从其加载类的 URL 列表(由空格分隔),或 nullinterfaces - 要实现的代理类的接口名称defaultLoader - 要使用的其他上下文类加载器,或 null
MalformedURLException - 如果 codebase 为非 null 且包含一个无效 URL,或者如果 codebase 为 null 且用于加载类的特定于提供者的 URL 无效。
ClassNotFoundException - 如果在指定位置无法找到某个指定接口的定义,或者如果动态代理类的创建失败(例如,如果 Proxy.getProxyClass(ClassLoader,Class[]) 抛出给定接口列表的 IllegalArgumentException)
public abstract ClassLoader getClassLoader(String codebase)
throws MalformedURLException
RMIClassLoader.getClassLoader(String) 的实现。返回从给定代码基 URL 路径加载类的类加载器。
如果存在安全管理器,则使用 RuntimePermission("getClassLoader") 权限调用其 checkPermission 方法;这会导致 SecurityException。此方法的实现还可以执行进一步的安全检查,以验证调用上下文是否具有连接到代码基 URL 路径中的所有 URL 的权限。
codebase - 返回的类加载器将从其加载类的 URL 列表(由空格分隔),或 null
MalformedURLException - 如果 codebase 为非 null 且包含一个无效 URL,或者如果 codebase 为 null 且用于标识类加载器的特定于提供者的 URL 无效
SecurityException - 如果存在安全管理器且其 checkPermission 方法的调用失败,或者如果调用方没有连接到代码基 URL 路径中所有 URL 的权限public abstract String getClassAnnotation(Class<?> cl)
RMIClassLoader.getClassAnnotation(Class) 的实现。返回表示类定义位置的注释字符串,RMI 将在编组给定类的对象时用其注释类描述符。
cl - 要获得其注释的类
null
NullPointerException - 如果 cl 为 null
|
JavaTM Platform Standard Ed. 6 |
|||||||||
| 上一个类 下一个类 | 框架 无框架 | |||||||||
| 摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 | |||||||||
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。