|
Spec-Zone .ru
спецификации, руководства, описания, API
|
public abstract class RMIClassLoaderSpi extends Object
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). |
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 - дополнительный контекстный загрузчик класса, чтобы использовать, или nullClass объект, представляющий загруженный класс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). Загружает динамический прокси-класс (см. Proxy это реализует ряд интерфейсов с именами от кодовой базы путь URL, дополнительно используя предоставленный загрузчик. Реализация этого метода должна или возвратить прокси-класс, который реализует именованные интерфейсы, или выдайте исключение.
codebase - список URL (разделенных пробелом), чтобы загрузить классы из, или nullinterfaces - имена интерфейсов для прокси-класса, чтобы реализоватьdefaultLoader - дополнительный контекстный загрузчик класса, чтобы использовать, или nullMalformedURLException - если codebase не -null и содержит недопустимый URL, или если codebase null и специфичный для провайдера URL, используемый, чтобы загрузить классы, недопустимClassNotFoundException - если определение для одного из именованных интерфейсов не могло бы быть найдено в указанном расположении, или если создание динамического отказавшего прокси-класса (такой, как будто Proxy.getProxyClass(ClassLoader,Class[]) бросил бы IllegalArgumentException для данного интерфейсного списка)public abstract ClassLoader getClassLoader(String codebase) throws MalformedURLException
RMIClassLoader.getClassLoader(String). Возвращает загрузчик класса, который загружает классы из данной кодовой базы путь URL. Если есть кормушка безопасности, checkPermission метод будет вызван с a RuntimePermission("getClassLoader") разрешение; это могло привести к a SecurityException. Реализация этого метода может также выполнить дальнейшие проверки безопасности, чтобы проверить, что у контекста вызова есть разрешение, чтобы соединить со всеми URL в кодовой базе путь URL.
codebase - список URL (разделенных пробелом), от которого возвращенный загрузчик класса загрузит классы из, или nullMalformedURLException - если codebase не -null и содержит недопустимый URL, или если codebase null и специфичный для провайдера URL, используемый, чтобы идентифицировать загрузчик класса, недопустимSecurityException - если есть менеджер безопасности и вызов checkPermission сбои метода, или если у вызывающей стороны нет разрешения, чтобы соединить со всеми URL в кодовой базе путь URLpublic abstract String getClassAnnotation(Class<?> cl)
RMIClassLoader.getClassAnnotation(Class). Возвращает строку аннотации (представляющий расположение для определения класса), который RMI будет использовать, чтобы аннотировать дескриптор класса, упорядочивая объекты данного класса.cl - класс, чтобы получить аннотацию дляnullNullPointerException - если cl null
Для дальнейшей ссылки API и документации разработчика, см. . Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.