Класс UID

Все реализованные интерфейсы:
Serializable
public final class UID
extends Object
implements Serializable

Объект UID представляет собой идентификатор, уникальный во времени относительно хоста, на котором он сгенерирован, или один из 216 «известных» идентификаторов.

Конструктор UID() может использоваться для генерации идентификатора, уникального во времени относительно хоста, на котором он сгенерирован. Конструктор UID(short) может использоваться для создания одного из 216 известных идентификаторов.

Экземпляр UID содержит три примитивных значения:

  • unique, int, уникально идентифицирующий виртуальную машину, в которой был сгенерирован этот UID, относительно её хоста и времени, представленного значением time (пример реализации значения unique — идентификатор процесса), или ноль для известного UID
  • time, long, равный времени (как возвращается методом System.currentTimeMillis()), в которое виртуальная машина, в которой был сгенерирован этот UID, была активна, или ноль для известного UID
  • count, short для различения UID экземпляров, сгенерированных в одной виртуальной машине с одинаковым значением time

Экземпляр UID , сгенерированный независимо, уникален во времени относительно хоста, на котором он сгенерирован, при условии, что перезапуск хоста занимает более одной миллисекунды и системные часы никогда не отматываются назад. Глобально уникальный идентификатор может быть построен путём объединения экземпляра UID с уникальным идентификатором хоста, например, IP-адресом.

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

Конструкторы

КонструкторОписание
UID()

Генерирует UID, уникальный во времени относительно хоста, на котором он был сгенерирован.

UID​(short num)

Создаёт «известный» UID.

Методы

Модификатор и типМетодОписание
booleanequals​(Object obj)

Сравнивает указанный объект с этим UID на равенство.

inthashCode()

Возвращает хэш-код для этого UID.

static UIDread​(DataInput in)

Конструирует и возвращает новый экземпляр UID, распаковывая двоичное представление из экземпляра DataInput.

StringtoString()

Возвращает строковое представление этого UID.

voidwrite​(DataOutput out)

Сериализует двоичное представление этого UID в экземпляр DataOutput.

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

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

Конструкторы

UID

public UID()

Генерирует UID, уникальный во времени относительно хоста, на котором он был сгенерирован.

UID

public UID(short num)

Создаёт «известный» UID . Существует 216 возможных таких известных идентификаторов.

Экземпляр UID , созданный с помощью этого конструктора, не будет конфликтовать ни с одним UID , сгенерированным с помощью конструктора без аргументов.

Параметры:
num - число для известного UID

Методы

hashCode

public int hashCode()

Возвращает хэш-код для этого UID.

Переопределяет:
hashCode в классе Object
Возвращает:
значение хэш-кода для этого UID
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

equals

public boolean equals(Object obj)

Сравнивает указанный объект с этим UID на равенство. Этот метод возвращает true тогда и только тогда, когда указанный объект является экземпляром UID с теми же значениями unique, time, и count, что и этот.

Переопределяет:
equals в классе Object
Параметры:
obj - объект для сравнения с этим UID
Возвращает:
true если заданный объект эквивалентен этому, и false в противном случае
См. также:
Object.hashCode(), HashMap

toString

public String toString()

Возвращает строковое представление этого UID.

Переопределяет:
toString в классе Object
Возвращает:
строковое представление этого UID

write

public void write(DataOutput out)
           throws IOException

Сериализует двоичное представление этого UID в экземпляр DataOutput.

Конкретно, этот метод сначала вызывает метод DataOutput.writeInt(int) данного потока с значением UID этого unique, затем вызывает метод DataOutput.writeLong(long) потока со значением UID этого time, а затем вызывает метод DataOutput.writeShort(int) потока со значением UID этого count.

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

read

public static UID read(DataInput in)
                throws IOException

Конструирует и возвращает новый экземпляр UID, распаковывая двоичное представление из экземпляра DataInput.

Конкретно, этот метод сначала вызывает метод DataInput.readInt() данного потока для чтения значения unique, затем вызывает метод DataInput.readLong() потока для чтения значения time, затем вызывает метод DataInput.readShort() потока для чтения значения count, и затем создаёт и возвращает новый экземпляр UID , содержащий значения unique, time, и count, которые были прочитаны из потока.

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

© 1993, 2020, 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/11/docs/api/java.rmi/java/rmi/server/UID.html

Spec-Zone .ru
спецификации, руководства, описания, API