Ссылка на класс
- Все реализованные интерфейсы:
-
Serializable,Cloneable
- Прямые известные подклассы:
LinkRef
public class Reference extends Object implements Cloneable, Serializable
Ссылка предоставляет способ записи адресной информации об объектах, которые сами по себе не связаны напрямую с системой именования/каталога.
Ссылка состоит из упорядоченного списка адресов и информации о классе объекта, на который она ссылается. Каждый адрес в списке идентифицирует точку связи для одного и того же концептуального объекта. «Точка связи» — это информация о том, как связаться с объектом. Это может быть, например, сетевой адрес, расположение в памяти на локальной машине, другой процесс на той же машине и т. д. Порядок адресов в списке может иметь значение для фабрик объектов, которые интерпретируют ссылку.
Несколько адресов могут возникнуть по разным причинам, таким как репликация или предоставление объектом интерфейсов через более чем один механизм связи. Адреса индексируются, начиная с нуля.
Ссылка также содержит информацию, которая помогает создать экземпляр объекта, на который указывает эта ссылка. Она содержит имя класса этого объекта, а также имя класса и местоположение фабрики, которая используется для создания объекта. Местоположение фабрики класса — это список URL-адресов, разделенных пробелами, представляющий путь к классу, используемый для загрузки фабрики. При необходимости загрузки класса фабрики (или любого класса или ресурса, от которого он зависит), каждый URL-адрес используется (в порядке) для попытки загрузки класса.
Экземпляр Reference не синхронизирован по отношению к одновременному доступу со стороны нескольких потоков. Потоки, которым необходимо получить одновременный доступ к одной ссылке, должны синхронизироваться между собой и обеспечивать необходимую блокировку.
- С:
- 1.3
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Vector |
addrs |
Содержит адреса, содержащиеся в этой ссылке. |
protected String |
classFactory |
Содержит имя класса фабрики для создания экземпляра объекта, на который ссылается эта ссылка. |
protected String |
classFactoryLocation |
Содержит расположение класса фабрики. |
protected String |
className |
Содержит полное имя класса объекта, на который указывает эта ссылка. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Reference |
Создает новую ссылку на объект с именем класса 'className'. |
Reference |
Создает новую ссылку на объект с именем класса 'className' и именем и расположением фабрики объекта. |
Reference |
Создает новую ссылку на объект с именем класса 'className' и адресом. |
Reference |
Создает новую ссылку на объект с именем класса 'className', именем и расположением фабрики объекта, а также адресом объекта. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
add |
Добавляет адрес в список адресов по индексу posn. |
void |
add |
Добавляет адрес в конец списка адресов. |
void |
clear() |
Удаляет все адреса из этой ссылки. |
Object |
clone() |
Создает копию этой ссылки, используя ее имя класса, список адресов, имя фабрики класса и расположение фабрики класса. |
boolean |
equals |
Определяет, является ли obj ссылкой с теми же адресами (в том же порядке), что и эта ссылка. |
RefAddr |
get |
Возвращает адрес по индексу posn. |
RefAddr |
get |
Возвращает первый адрес с типом адреса 'addrType'. |
Enumeration |
getAll() |
Возвращает перечисление адресов в этой ссылке. |
String |
getClassName() |
Возвращает имя класса объекта, на который указывает эта ссылка. |
String |
getFactoryClassLocation() |
Возвращает расположение фабрики объекта, на который указывает эта ссылка. |
String |
getFactoryClassName() |
Возвращает имя класса фабрики объекта, на который указывает эта ссылка. |
int |
hashCode() |
Вычисляет хэш-код этой ссылки. |
Object |
remove |
Удаляет адрес по индексу posn из списка адресов. |
int |
size() |
Возвращает количество адресов в этой ссылке. |
String |
toString() |
Генерирует строковое представление этой ссылки. |
Подробное описание полей
className
protected String className
- См. также:
addrs
protected Vector<RefAddr> addrs
classFactory
protected String classFactory
classFactoryLocation
protected String classFactoryLocation
Подробное описание конструкторов
Reference
public Reference(String className)
- Параметры:
-
className- Непустое имя класса объекта, на который ссылается эта ссылка.
Reference
public Reference(String className, RefAddr addr)
- Параметры:
-
className- Непустое имя класса объекта, на который ссылается эта ссылка. -
addr- Непустой адрес объекта.
Reference
public Reference(String className, String factory, String factoryLocation)
- Параметры:
-
className- Непустое имя класса объекта, на который ссылается эта ссылка. -
factory- Возможно, пустое имя класса фабрики объекта. -
factoryLocation- Возможно, пустое расположение для загрузки фабрики (например, URL) - См. также:
Reference
public Reference(String className, RefAddr addr, String factory, String factoryLocation)
- Параметры:
-
className- Непустое имя класса объекта, на который ссылается эта ссылка. -
addr- Непустой адрес объекта. -
factory- Возможно, пустое имя класса фабрики объекта. -
factoryLocation- Возможно, пустое расположение для загрузки фабрики (например, URL) - См. также:
Подробное описание методов
getClassName
public String getClassName()
- Возвращает:
- Непустое полное имя класса объекта. (например, "java.lang.String")
getFactoryClassName
public String getFactoryClassName()
- Возвращает:
- Возможо, пустое полное имя класса фабрики. (например, "java.lang.String")
getFactoryClassLocation
public String getFactoryClassLocation()
- Возвращает:
- Возможо, пустая строка, содержащая расположение для загрузки класса фабрики.
get
public RefAddr get(String addrType)
- Параметры:
-
addrType- Непустой тип адреса, для которого требуется найти адрес. - Возвращает:
- Адрес в этой ссылке с типом адреса 'addrType'; null, если такой адрес не существует.
get
public RefAddr get(int posn)
- Параметры:
-
posn- Индекс адреса для извлечения. - Возвращает:
- Адрес по индексу posn (с нулевой базой). Должен быть в диапазоне [0,getAddressCount()).
- Исключения:
-
ArrayIndexOutOfBoundsException- Если posn не в указанном диапазоне.
getAll
public Enumeration<RefAddr> getAll()
- Возвращает:
- Непустое перечисление адресов (
RefAddr) в этой ссылке. Если в этой ссылке нет адресов, возвращается перечисление с нулём элементов.
size
public int size()
- Возвращает:
- Неотрицательное количество адресов в этой ссылке.
add
public void add(RefAddr addr)
- Параметры:
-
addr- Непустой адрес для добавления.
add
public void add(int posn, RefAddr addr)
- Параметры:
-
posn- Индекс списка для вставки addr (с нулевой базой). -
addr- Непустой адрес для добавления. - Исключения:
-
ArrayIndexOutOfBoundsException- Если posn не в указанном диапазоне.
remove
public Object remove(int posn)
- Параметры:
-
posn- Индекс удаляемого адреса (с нулевой базой). - Возвращает:
- Удаленный адрес.
- Исключения:
-
ArrayIndexOutOfBoundsException- Если posn не в указанном диапазоне.
clear
public void clear()
equals
public boolean equals(Object obj)
hashCode
toString
public String toString()
clone
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.naming/javax/naming/Reference.html