Справочник классов
- Все реализуемые интерфейсы:
Serializable, Cloneable
- Прямые подклассы:
LinkRef
public class Reference extends Object implements Cloneable, Serializable
Reference предоставляет способ хранения адресной информации об объектах, которые сами по себе не привязаны непосредственно к системе именования/каталогов.
Reference состоит из упорядоченного списка адресов и информации о классе объекта, на который ссылаются. Каждый адрес в списке определяет конечную точку связи для одного и того же концептуального объекта. «Конечная точка связи» — это информация, указывающая, как связаться с объектом. Это может быть, например, сетевой адрес, расположение в памяти локального компьютера, другой процесс на том же компьютере и т. д. Порядок адресов в списке может иметь значение для фабрик объектов, интерпретирующих ссылку.
Несколько адресов могут появиться по разным причинам, например из-за репликации или предоставления объектом интерфейсов через несколько механизмов связи. Индексация адресов начинается с нуля.
Reference также содержит информацию, необходимую для создания экземпляра объекта, на который ссылается этот Reference. Он содержит имя класса этого объекта, а также имя и расположение фабрики, используемой для создания объекта. Расположение фабрики классов — это разделённый пробелами список URL-адресов, представляющих путь к классам, используемый для загрузки фабрики. Когда возникает необходимость загрузить класс фабрики (или любой класс либо ресурс, от которого он зависит), для попытки загрузки класса по очереди используется каждый URL-адрес.
Экземпляр Reference не синхронизирован для одновременного доступа из нескольких потоков. Потоки, которым необходимо одновременно обращаться к одному экземпляру Reference, должны самостоятельно синхронизироваться и обеспечивать необходимую блокировку.
- Начиная с:
- 1.3
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Vector |
addrs |
Содержит адреса, хранящиеся в этом Reference. |
protected String |
classFactory |
Содержит имя класса фабрики для создания экземпляра объекта, на который ссылается этот Reference. |
protected String |
classFactoryLocation |
Содержит расположение класса фабрики. |
protected String |
className |
Содержит полное имя класса объекта, на который ссылается этот Reference. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
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— имя класса объекта, на который ссылается эта ссылка; не может быть null.
Reference
public Reference(String className, RefAddr addr)
- Параметры:
-
className— имя класса объекта, на который ссылается эта ссылка; не может быть null. -
addr— адрес объекта; не может быть null.
Reference
public Reference(String className, String factory, String factoryLocation)
- Параметры:
-
className— имя класса объекта, на который ссылается эта ссылка; не может быть null. -
factory— имя класса фабрики объекта; может быть null. -
factoryLocation— расположение, из которого следует загрузить фабрику (например, URL); может быть null. - См. также:
Reference
public Reference(String className, RefAddr addr, String factory, String factoryLocation)
- Параметры:
-
className— имя класса объекта, на который ссылается эта ссылка; не может быть null. -
addr— адрес объекта; не может быть null. -
factory— имя класса фабрики объекта; может быть null. -
factoryLocation— расположение, из которого следует загрузить фабрику (например, URL); может быть null. - См. также:
Подробное описание методов
getClassName
public String getClassName()
- Возвращает:
- Полное имя класса объекта, не равное null (например, "java.lang.String").
getFactoryClassName
public String getFactoryClassName()
- Возвращает:
- Полное имя класса фабрики, которое может быть null (например, "java.lang.String").
getFactoryClassLocation
public String getFactoryClassLocation()
- Возвращает:
- Строку с расположением для загрузки класса фабрики; она может быть null.
get
public RefAddr get(String addrType)
- Параметры:
-
addrType— тип адреса, для которого нужно найти адрес; не может быть null. - Возвращает:
- Адрес в этой ссылке с типом адреса 'addrType'; null, если такого адреса нет.
get
public RefAddr get(int posn)
- Параметры:
-
posn— индекс возвращаемого адреса. - Возвращает:
- Адрес по индексу posn, отсчитываемому от нуля. Индекс должен находиться в диапазоне [0,getAddressCount()).
- Выбрасывает:
-
ArrayIndexOutOfBoundsException— если posn не входит в указанный диапазон.
getAll
public Enumeration<RefAddr> getAll()
- Возвращает:
- Перечисление адресов в этой ссылке (
RefAddr), не равное null. Если эта ссылка не содержит адресов, возвращается перечисление с нулевым количеством элементов.
size
public int size()
- Возвращает:
- Неотрицательное количество адресов в этой ссылке.
add
public void add(RefAddr addr)
- Параметры:
-
addr— добавляемый адрес; не может быть null.
add
public void add(int posn, RefAddr addr)
- Параметры:
-
posn— индекс списка, отсчитываемый от нуля, по которому нужно вставить addr. -
addr— добавляемый адрес; не может быть null. - Выбрасывает:
-
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://docs.oracle.com/en/java/javase/25/docs/api/java.naming/javax/naming/Reference.html