Spec-Zone.ru › OpenJDK 24

Класс 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.

Методы, объявленные в классе java.lang.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, созданный с помощью этого конструктора, не будет конфликтовать с каким-либо ObjID, сгенерированным с помощью конструктора без аргументов.

Параметры:
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(java.lang.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
Возвращает:
строковое представление данного идентификатора объекта

© 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.rmi/java/rmi/server/ObjID.html

Spec-Zone.ru

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