58 * {@code UUID}. The bit layout described above is valid only for a {@code
59 * UUID} with a variant value of 2, which indicates the Leach-Salz variant.
60 *
61 * <p> The version field holds a value that describes the type of this {@code
62 * UUID}. There are four different basic types of UUIDs: time-based, DCE
63 * security, name-based, and randomly generated UUIDs. These types have a
64 * version value of 1, 2, 3 and 4, respectively.
65 *
66 * <p> For more information including algorithms used to create {@code UUID}s,
67 * see <a href="http://www.ietf.org/rfc/rfc4122.txt"> <i>RFC 4122: A
68 * Universally Unique IDentifier (UUID) URN Namespace</i></a>, section 4.2
69 * "Algorithms for Creating a Time-Based UUID".
70 *
71 * @since 1.5
72 */
73 public final class UUID implements java.io.Serializable, Comparable<UUID> {
74
75 /**
76 * Explicit serialVersionUID for interoperability.
77 */
78 private static final long serialVersionUID = -4856846361193249489L;
79
80 /*
81 * The most significant 64 bits of this UUID.
82 *
83 * @serial
84 */
85 private final long mostSigBits;
86
87 /*
88 * The least significant 64 bits of this UUID.
89 *
90 * @serial
91 */
92 private final long leastSigBits;
93
94 private static final JavaLangAccess jla = SharedSecrets.getJavaLangAccess();
95
96 /*
97 * The random number generator used by this class to create random
|
58 * {@code UUID}. The bit layout described above is valid only for a {@code
59 * UUID} with a variant value of 2, which indicates the Leach-Salz variant.
60 *
61 * <p> The version field holds a value that describes the type of this {@code
62 * UUID}. There are four different basic types of UUIDs: time-based, DCE
63 * security, name-based, and randomly generated UUIDs. These types have a
64 * version value of 1, 2, 3 and 4, respectively.
65 *
66 * <p> For more information including algorithms used to create {@code UUID}s,
67 * see <a href="http://www.ietf.org/rfc/rfc4122.txt"> <i>RFC 4122: A
68 * Universally Unique IDentifier (UUID) URN Namespace</i></a>, section 4.2
69 * "Algorithms for Creating a Time-Based UUID".
70 *
71 * @since 1.5
72 */
73 public final class UUID implements java.io.Serializable, Comparable<UUID> {
74
75 /**
76 * Explicit serialVersionUID for interoperability.
77 */
78 @java.io.Serial
79 private static final long serialVersionUID = -4856846361193249489L;
80
81 /*
82 * The most significant 64 bits of this UUID.
83 *
84 * @serial
85 */
86 private final long mostSigBits;
87
88 /*
89 * The least significant 64 bits of this UUID.
90 *
91 * @serial
92 */
93 private final long leastSigBits;
94
95 private static final JavaLangAccess jla = SharedSecrets.getJavaLangAccess();
96
97 /*
98 * The random number generator used by this class to create random
|