Класс 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 |
Создает «общеизвестный» UID. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Сравнивает указанный объект с этим UID на равенство. |
int |
hashCode() |
Возвращает значение хеш-кода для этого UID. |
static UID |
read |
Создает и возвращает новый экземпляр UID, десериализуя двоичное представление из экземпляра DataInput. |
String |
toString() |
Возвращает строковое представление этого UID. |
void |
write |
Сериализует двоичное представление этого UID в экземпляр DataOutput. |
Методы, объявленные в классе Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удален в будущей версии. Финализация устарела и может быть удалена в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно посредством вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
UID
public UID()
UID, уникальный во времени относительно хоста, на котором он был сгенерирован.UID
public UID(short num)
UID. Существует 216 возможных общеизвестных идентификаторов такого типа. UID, созданный с помощью этого конструктора, не будет совпадать ни с одним UID, сгенерированным конструктором без аргументов.
- Параметры:
-
num— номер для общеизвестногоUID
Подробное описание методов
hashCode
equals
public boolean equals(Object obj)
UID на равенство. Метод возвращает true тогда и только тогда, когда указанный объект является экземпляром UID и имеет те же значения unique, time и count, что и этот объект.toString
write
public void write(DataOutput out) throws IOException
UID в экземпляр DataOutput. В частности, этот метод сначала вызывает метод DataOutput.writeInt(int) заданного потока, передавая ему значение unique этого UID, затем вызывает метод потока DataOutput.writeLong(long), передавая ему значение time этого UID, а затем вызывает метод потока DataOutput.writeShort(int), передавая ему значение count этого UID.
- Параметры:
-
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, 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.