モジュール java.base
パッケージ java.util

クラスUUID

java.lang.Object
java.util.UUID
すべての実装されたインタフェース:
Serializable, Comparable<UUID>

public final class UUID extends Object implements Serializable, Comparable<UUID>
不変のUUID (universally unique identifier)を表すクラスです。 UUIDは、128ビット値を表します。

これらのグローバル識別子には、さまざまな形式が存在します。 コンストラクタを使用すれば任意の形式のUUIDを作成できますが、このクラスのメソッドはLeach-Salz形式の操作用メソッドです。

形式2 (Leach-Salz) UUIDのレイアウトは、次のとおりです。最上位のlongは、次の符号なしフィールドで構成されます。

 0xFFFFFFFF00000000 time_low
 0x00000000FFFF0000 time_mid
 0x000000000000F000 version
 0x0000000000000FFF time_hi
 
最下位のlongは、次の符号なしフィールドで構成されます。
 0xC000000000000000 variant
 0x3FFF000000000000 clock_seq
 0x0000FFFFFFFFFFFF node
 

variantフィールドには、UUIDのレイアウトを識別する値が含まれます。 前述のビット・レイアウトは、Leach-Salz形式を示す形式値2を保持する UUIDでのみ有効です。

versionフィールドには、この UUIDの型を示す値が含まれます。 UUIDには4種類の基本タイプがあります。時間ベースUUID、DCEセキュリティUUID、名前ベースUUID、およびランダム生成UUIDです。 これらの型は、version値1、2、3、および4をそれぞれ保持します。

UUIDの作成に使用されるアルゴリズムなどの詳細については、「RFC 4122: A Universally Unique IDentifier (UUID) URN Namespace」のセクション4.2「Algorithms for Creating a Time-Based UUID」を参照してください。

導入されたバージョン:
1.5
外部仕様
関連項目: