Spec-Zone.ru › OpenJDK 25

Класс ObjID

java.lang.Object
java.rmi.server.ObjID
Все реализуемые интерфейсы:
Serializable
public final class ObjID extends Object implements Serializable
ObjID используется для идентификации удалённого объекта, экспортированного в среду выполнения RMI. При экспорте удалённому объекту назначается идентификатор объекта — неявно или явно, в зависимости от используемого API экспорта.

Конструктор ObjID() можно использовать для создания уникального идентификатора объекта. Такой ObjID уникален во времени относительно узла, на котором он создан. Конструктор ObjID(int) можно использовать для создания «общеизвестного» идентификатора объекта. Область действия общеизвестного ObjID зависит от среды выполнения RMI, в которую он экспортирован.

Экземпляр ObjID содержит номер объекта (типа long) и идентификатор адресного пространства (типа UID). У уникального ObjID идентификатор адресного пространства уникален во времени относительно заданного узла. У общеизвестного ObjID идентификатор адресного пространства эквивалентен идентификатору, возвращаемому конструктором UID(short) при вызове со значением ноль.

Если системное свойство java.rmi.server.randomIDs определено и равно строке "true" (без учёта регистра), конструктор ObjID() использует криптографически стойкий генератор случайных чисел для выбора номера объекта возвращаемого ObjID.

С версии:
1.1
См. также:
  • Сериализованная форма

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

Модификатор и тип Поле Описание
static final int ACTIVATOR_ID
Номер объекта для общеизвестного ObjID активатора.
static final int DGC_ID
Номер объекта для общеизвестного ObjID распределённого сборщика мусора.
static final int REGISTRY_ID
Номер объекта для общеизвестного ObjID реестра.

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

Конструктор Описание
ObjID()
Создаёт уникальный идентификатор объекта.
ObjID(int objNum)
Создаёт «общеизвестный» идентификатор объекта.

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

Модификатор и тип Метод Описание
boolean equals(Object obj)
Сравнивает указанный объект с этим ObjID на равенство.
int hashCode()
Возвращает хеш-код этого идентификатора объекта — номер объекта.
static ObjID read(ObjectInput in)
Создаёт и возвращает новый экземпляр ObjID, десериализуя двоичное представление из экземпляра ObjectInput.
String toString()
Возвращает строковое представление этого идентификатора объекта.
void write(ObjectOutput out)
Сериализует двоичное представление этого ObjID в экземпляр ObjectOutput.

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

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

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

REGISTRY_ID

public static final int REGISTRY_ID
Номер объекта для общеизвестного ObjID реестра.
См. также:
  • Значения константных полей

ACTIVATOR_ID

public static final int ACTIVATOR_ID
Номер объекта для общеизвестного ObjID активатора.
См. также:
  • Значения константных полей

DGC_ID

public static final int DGC_ID
Номер объекта для общеизвестного ObjID распределённого сборщика мусора.
См. также:
  • Значения константных полей

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

ObjID

public ObjID()
Создаёт уникальный идентификатор объекта.

Если системное свойство java.rmi.server.randomIDs определено и равно строке "true" (без учёта регистра), этот конструктор использует криптографически стойкий генератор случайных чисел для выбора номера объекта возвращаемого ObjID.

ObjID

public ObjID(int objNum)
Создаёт «общеизвестный» идентификатор объекта.

Созданный этим конструктором ObjID не будет конфликтовать ни с одним ObjIDs, созданным конструктором без аргументов.

Параметры:
objNum — номер объекта для общеизвестного идентификатора объекта

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

write

public void write(ObjectOutput out) throws IOException
Сериализует двоичное представление этого ObjID в экземпляр ObjectOutput.

В частности, этот метод сначала вызывает метод DataOutput.writeLong(long) указанного потока, передавая ему номер объекта этого идентификатора, а затем записывает идентификатор адресного пространства, вызывая его метод UID.write(DataOutput) с этим потоком.

Параметры:
out — экземпляр ObjectOutput, в который следует записать этот ObjID
Исключения:
IOException — если при выполнении этой операции возникает ошибка ввода-вывода

read

public static ObjID read(ObjectInput in) throws IOException
Создаёт и возвращает новый экземпляр ObjID, десериализуя двоичное представление из экземпляра ObjectInput.

В частности, этот метод сначала вызывает метод DataInput.readLong() указанного потока, чтобы прочитать номер объекта, затем вызывает UID.read(DataInput) с этим потоком, чтобы прочитать идентификатор адресного пространства, после чего создаёт и возвращает новый экземпляр ObjID, содержащий прочитанные из потока номер объекта и идентификатор адресного пространства.

Параметры:
in — экземпляр ObjectInput, из которого следует прочитать ObjID
Возвращает:
десериализованный экземпляр ObjID
Исключения:
IOException — если при выполнении этой операции возникает ошибка ввода-вывода

hashCode

public int hashCode()
Возвращает хеш-код этого идентификатора объекта — номер объекта.
Переопределяет:
hashCode в классе Object
Возвращает:
хеш-код этого идентификатора объекта
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

equals

public boolean equals(Object obj)
Сравнивает указанный объект с этим ObjID на равенство. Этот метод возвращает true тогда и только тогда, когда указанный объект является экземпляром ObjID с теми же номером объекта и идентификатором адресного пространства, что и данный объект.
Переопределяет:
equals в классе Object
Параметры:
obj — объект, с которым сравнивается этот ObjID
Возвращает:
true, если заданный объект эквивалентен этому объекту, и false в противном случае
См. также:
  • Object.hashCode()
  • HashMap

toString

public String toString()
Возвращает строковое представление этого идентификатора объекта.
Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого идентификатора объекта

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по 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.rmi/java/rmi/server/ObjID.html

Spec-Zone.ru

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