Spec-Zone.ru › OpenJDK 25

Справочник классов

java.lang.Object
javax.naming.Reference
Все реализуемые интерфейсы:
Serializable, Cloneable
Прямые подклассы:
LinkRef
public class Reference extends Object implements Cloneable, Serializable
Этот класс представляет ссылку на объект, находящийся вне системы именования/каталогов.

Reference предоставляет способ хранения адресной информации об объектах, которые сами по себе не привязаны непосредственно к системе именования/каталогов.

Reference состоит из упорядоченного списка адресов и информации о классе объекта, на который ссылаются. Каждый адрес в списке определяет конечную точку связи для одного и того же концептуального объекта. «Конечная точка связи» — это информация, указывающая, как связаться с объектом. Это может быть, например, сетевой адрес, расположение в памяти локального компьютера, другой процесс на том же компьютере и т. д. Порядок адресов в списке может иметь значение для фабрик объектов, интерпретирующих ссылку.

Несколько адресов могут появиться по разным причинам, например из-за репликации или предоставления объектом интерфейсов через несколько механизмов связи. Индексация адресов начинается с нуля.

Reference также содержит информацию, необходимую для создания экземпляра объекта, на который ссылается этот Reference. Он содержит имя класса этого объекта, а также имя и расположение фабрики, используемой для создания объекта. Расположение фабрики классов — это разделённый пробелами список URL-адресов, представляющих путь к классам, используемый для загрузки фабрики. Когда возникает необходимость загрузить класс фабрики (или любой класс либо ресурс, от которого он зависит), для попытки загрузки класса по очереди используется каждый URL-адрес.

Экземпляр Reference не синхронизирован для одновременного доступа из нескольких потоков. Потоки, которым необходимо одновременно обращаться к одному экземпляру Reference, должны самостоятельно синхронизироваться и обеспечивать необходимую блокировку.

Начиная с:
1.3
См. также:
  • RefAddr
  • StringRefAddr
  • BinaryRefAddr
  • Сериализованная форма

Краткое описание полей

Модификатор и тип Поле Описание
protected Vector<RefAddr> addrs
Содержит адреса, хранящиеся в этом Reference.
protected String classFactory
Содержит имя класса фабрики для создания экземпляра объекта, на который ссылается этот Reference.
protected String classFactoryLocation
Содержит расположение класса фабрики.
protected String className
Содержит полное имя класса объекта, на который ссылается этот Reference.

Краткое описание конструкторов

Конструктор Описание
Reference(String className)
Создаёт новую ссылку на объект с именем класса 'className'.
Reference(String className, String factory, String factoryLocation)
Создаёт новую ссылку на объект с именем класса 'className', а также именем и расположением класса фабрики объекта.
Reference(String className, RefAddr addr)
Создаёт новую ссылку на объект с именем класса 'className' и адресом.
Reference(String className, RefAddr addr, String factory, String factoryLocation)
Создаёт новую ссылку на объект с именем класса 'className', именем и расположением класса фабрики объекта, а также адресом объекта.

Краткое описание методов

Модификатор и тип Метод Описание
void add(int posn, RefAddr addr)
Добавляет адрес в список адресов по индексу posn.
void add(RefAddr addr)
Добавляет адрес в конец списка адресов.
void clear()
Удаляет все адреса из этой ссылки.
Object clone()
Создаёт копию этой ссылки, используя её имя класса, список адресов, имя класса фабрики и расположение класса фабрики.
boolean equals(Object obj)
Определяет, является ли obj ссылкой с теми же адресами (в том же порядке), что и эта ссылка.
RefAddr get(int posn)
Возвращает адрес по индексу posn.
RefAddr get(String addrType)
Возвращает первый адрес с типом адреса 'addrType'.
Enumeration<RefAddr> getAll()
Возвращает перечисление адресов в этой ссылке.
String getClassName()
Возвращает имя класса объекта, на который ссылается эта ссылка.
String getFactoryClassLocation()
Возвращает расположение фабрики объекта, на который ссылается эта ссылка.
String getFactoryClassName()
Возвращает имя класса фабрики объекта, на который ссылается эта ссылка.
int hashCode()
Вычисляет хеш-код этой ссылки.
Object remove(int posn)
Удаляет адрес по индексу posn из списка адресов.
int size()
Возвращает количество адресов в этой ссылке.
String toString()
Создаёт строковое представление этой ссылки.

Методы, объявленные в классе Object

finalize, getClass, notify, notifyAll, wait, wait, wait

Подробное описание полей

className

protected String className
Содержит полное имя класса объекта, на который ссылается этот Reference.
См. также:
  • Class.getName()

addrs

protected Vector<RefAddr> addrs
Содержит адреса, хранящиеся в этом Reference. Инициализируется конструктором.

classFactory

protected String classFactory
Содержит имя класса фабрики для создания экземпляра объекта, на который ссылается этот Reference. Инициализируется значением null.

classFactoryLocation

protected String classFactoryLocation
Содержит расположение класса фабрики. Инициализируется значением null.

Подробное описание конструкторов

Reference

public Reference(String className)
Создаёт новую ссылку на объект с именем класса 'className'. Класс фабрики и расположение класса фабрики устанавливаются в null. Созданная ссылка не содержит адресов.
Параметры:
className — имя класса объекта, на который ссылается эта ссылка; не может быть null.

Reference

public Reference(String className, RefAddr addr)
Создаёт новую ссылку на объект с именем класса 'className' и адресом. Класс фабрики и расположение класса фабрики устанавливаются в null.
Параметры:
className — имя класса объекта, на который ссылается эта ссылка; не может быть null.
addr — адрес объекта; не может быть null.

Reference

public Reference(String className, String factory, String factoryLocation)
Создаёт новую ссылку на объект с именем класса 'className', а также именем и расположением класса фабрики объекта.
Параметры:
className — имя класса объекта, на который ссылается эта ссылка; не может быть null.
factory — имя класса фабрики объекта; может быть null.
factoryLocation — расположение, из которого следует загрузить фабрику (например, URL); может быть null.
См. также:
  • ObjectFactory
  • NamingManager.getObjectInstance(Object, Name, Context, Hashtable)

Reference

public Reference(String className, RefAddr addr, String factory, String factoryLocation)
Создаёт новую ссылку на объект с именем класса 'className', именем и расположением класса фабрики объекта, а также адресом объекта.
Параметры:
className — имя класса объекта, на который ссылается эта ссылка; не может быть null.
addr — адрес объекта; не может быть null.
factory — имя класса фабрики объекта; может быть null.
factoryLocation — расположение, из которого следует загрузить фабрику (например, URL); может быть null.
См. также:
  • ObjectFactory
  • NamingManager.getObjectInstance(Object, Name, Context, Hashtable)

Подробное описание методов

getClassName

public String getClassName()
Возвращает имя класса объекта, на который ссылается эта ссылка.
Возвращает:
Полное имя класса объекта, не равное null (например, "java.lang.String").

getFactoryClassName

public String getFactoryClassName()
Возвращает имя класса фабрики объекта, на который ссылается эта ссылка.
Возвращает:
Полное имя класса фабрики, которое может быть null (например, "java.lang.String").

getFactoryClassLocation

public String getFactoryClassLocation()
Возвращает расположение фабрики объекта, на который ссылается эта ссылка. Если это база кода, то она представляет собой упорядоченный список URL-адресов, разделённых пробелами и указывающих расположения, из которых следует загружать определение класса фабрики.
Возвращает:
Строку с расположением для загрузки класса фабрики; она может быть null.

get

public RefAddr get(String addrType)
Возвращает первый адрес с типом адреса 'addrType'. Для проверки совпадения типов адресов используется String.compareTo().
Параметры:
addrType — тип адреса, для которого нужно найти адрес; не может быть null.
Возвращает:
Адрес в этой ссылке с типом адреса 'addrType'; null, если такого адреса нет.

get

public RefAddr get(int posn)
Возвращает адрес по индексу 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. Все адреса с индексом posn или выше сдвигаются на одну позицию вверх по списку (от индекса 0).
Параметры:
posn — индекс списка, отсчитываемый от нуля, по которому нужно вставить addr.
addr — добавляемый адрес; не может быть null.
Выбрасывает:
ArrayIndexOutOfBoundsException — если posn не входит в указанный диапазон.

remove

public Object remove(int posn)
Удаляет адрес по индексу posn из списка адресов. Все адреса с индексом больше posn сдвигаются на одну позицию вниз по списку (к индексу 0).
Параметры:
posn — индекс удаляемого адреса, отсчитываемый от нуля.
Возвращает:
Удалённый адрес.
Выбрасывает:
ArrayIndexOutOfBoundsException — если posn не входит в указанный диапазон.

clear

public void clear()
Удаляет все адреса из этой ссылки.

equals

public boolean equals(Object obj)
Определяет, является ли obj ссылкой с теми же адресами (в том же порядке), что и эта ссылка. Адреса сравниваются с помощью RefAddr.equals(). Помимо совпадения адресов, имена классов у Reference и этой ссылки также должны совпадать. Класс фабрики и расположение класса фабрики не проверяются. Если obj равен null или не является экземпляром Reference, возвращается null.
Переопределяет:
equals в классе Object
Параметры:
obj — проверяемый объект, который может быть null.
Возвращает:
true, если obj равен этой ссылке; в противном случае false.
См. также:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Вычисляет хеш-код этой ссылки. Хеш-код равен сумме хеш-кодов её адресов.
Переопределяет:
hashCode в классе Object
Возвращает:
Хеш-код этой ссылки типа int.
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

toString

public String toString()
Создаёт строковое представление этой ссылки. Строка состоит из имени класса, на который ссылается эта ссылка, и строкового представления каждого из её адресов. Это представление предназначено только для отображения, а не для разбора.
Переопределяет:
toString в классе Object
Возвращает:
Строковое представление этой ссылки, не равное null.

clone

public Object clone()
Создаёт копию этой ссылки, используя её имя класса, список адресов, имя класса фабрики и расположение класса фабрики. Изменения в созданной копии не влияют на этот Reference, и наоборот.
Переопределяет:
clone в классе Object
Возвращает:
клонированный экземпляр.
См. также:
  • Cloneable

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API