Класс UID
- java.lang.Object
-
- java.rmi.server.UID
- Все реализованные интерфейсы:
- Serializable
public final class UID extends Object implements Serializable
Объект UID представляет собой идентификатор, уникальный во времени относительно узла, на котором он сгенерирован, или один из 216 «известных» идентификаторов.
Конструктор UID() может быть использован для генерации идентификатора, уникального во времени относительно узла, на котором он сгенерирован. Конструктор UID(short) может быть использован для создания одного из 216 известных идентификаторов.
Экземпляр UID содержит три примитивных значения:
-
unique, идентификаторint, уникально идентифицирующий виртуальную машину (VM), в которой был сгенерирован этотUID, относительно её узла и времени, представленного значениемtime(пример реализации значенияunique— идентификатор процесса), или ноль для известногоUID -
time, значениеlongравное времени (как возвращается методомSystem.currentTimeMillis()), в которое VM, в которой был сгенерирован этотUID, была активна, или ноль для известногоUID -
count, значениеshortдля различенияUIDs, сгенерированных в одной VM с одинаковым значениемtime
Независимо сгенерированный экземпляр UID уникален во времени относительно узла, на котором он был сгенерирован, при условии, что перезапуск узла занимает более одной миллисекунды, и время системы никогда не устанавливается назад.
Глобально уникальный идентификатор можно создать, объединив экземпляр UID с уникальным идентификатором узла, например, IP-адресом.
- С:
- JDK1.1
- См. также:
- Сериализованная форма
Конструкторы
| Конструктор и описание |
|---|
UID() Генерирует |
UID(short num) Создаёт «известный» |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
boolean |
equals(Object obj) Сравнивает заданный объект с этим |
int |
hashCode() Возвращает хэш-код для этого |
static UID |
read(DataInput in) Конструирует и возвращает новый экземпляр |
String |
toString() Возвращает строковое представление этого |
void |
write(DataOutput out) Кодирует двоичное представление этого |
Методы, унаследованные от класса java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Конструкторы
UID
public UID()
Генерирует UID, уникальный во времени относительно узла, на котором он был сгенерирован.
UID
public UID(short num)
Создаёт «известный» UID.
Экземпляр UID, созданный с помощью этого конструктора, не будет конфликтовать с любым UIDs, сгенерированным с помощью конструктора без аргументов.
- Параметры:
-
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.
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.