OpenJDK 8 - UID

कक्षा यूआईडी




openjdk

कक्षा यूआईडी

सभी लागू इंटरफेस:
Serializable
public final class UID
extends Object
implements Serializable

एक UID एक पहचानकर्ता का प्रतिनिधित्व करता है जो समय पर उत्पन्न होने वाले मेजबान के संबंध में अद्वितीय है, या 2 16 "प्रसिद्ध" पहचानकर्ताओं में से एक है।

UID() कंस्ट्रक्टर का उपयोग एक पहचानकर्ता को उत्पन्न करने के लिए किया जा सकता है जो उस पर उत्पन्न होने वाले मेजबान के संबंध में समय के साथ अद्वितीय है। UID(short) कंस्ट्रक्टर का उपयोग 2 16 प्रसिद्ध पहचानकर्ताओं में से एक बनाने के लिए किया जा सकता है।

एक UID उदाहरण में तीन आदिम मूल्य होते हैं:

  • unique , एक ऐसा उदाहरण जो VM को विशिष्ट रूप से पहचानता है कि यह UID अपने होस्ट के संबंध में और time मान द्वारा प्रस्तुत समय के साथ उत्पन्न हुआ था ( unique मूल्य का एक उदाहरण कार्यान्वयन एक प्रक्रिया पहचानकर्ता होगा), या एक कुएं के लिए शून्य। -उपयुक्त UID
  • time , एक long बराबर एक long (जैसा कि System.currentTimeMillis() द्वारा लौटाया गया) जिस पर यह UID उत्पन्न हुआ था VM एक प्रसिद्ध UID लिए जीवित था, या शून्य था।
  • count , एक ही time मूल्य के साथ एक ही वीएम में उत्पन्न UID को भेद short लिए एक short

एक स्वतंत्र रूप से उत्पन्न UID उदाहरण मेजबान के संबंध में समय के साथ अद्वितीय है क्योंकि यह तब तक उत्पन्न होता है जब तक मेजबान को रिबूट करने के लिए एक से अधिक मिलीसेकंड की आवश्यकता होती है और इसकी सिस्टम घड़ी कभी भी पीछे की ओर सेट नहीं होती है। विश्व स्तर पर विशिष्ट पहचानकर्ता का निर्माण UID उदाहरण के साथ एक अद्वितीय मेजबान पहचानकर्ता के साथ जोड़कर किया जा सकता है, जैसे कि आईपी पता।

जबसे:
JDK1.1

कंस्ट्रक्टर्स

यूआईडी

public UID()

एक UID बनाता है जो समय के साथ मेजबान के संबंध में अद्वितीय है जो इसे उत्पन्न किया गया था।

यूआईडी

public UID(short num)

एक "प्रसिद्ध" UID बनाता है। इस तरह की जानी-मानी आईडी में 2 16 संभव हैं।

इस कंस्ट्रक्टर के माध्यम से बनाया गया एक UID किसी आरईजी कंस्ट्रक्टर के माध्यम से उत्पन्न किसी भी UID के साथ नहीं टकराएगा।

पैरामीटर:
num - प्रसिद्ध UID लिए संख्या

तरीके

हैश कोड

public int hashCode()

इस UID लिए हैश कोड मान लौटाता है।

ओवरराइड:
java.lang.Object क्लास java.lang.Object
यह दिखाता है:
इस UID लिए हैश कोड मान
यह भी देखें:
java.lang.Object , System.currentTimeMillis()

के बराबर होती है

public boolean equals(Object obj)

समानता के लिए इस UID साथ निर्दिष्ट ऑब्जेक्ट की तुलना करता है। यह विधि true है और तभी यदि निर्दिष्ट ऑब्जेक्ट UID उदाहरण के साथ एक ही unique , time और count मान है।

ओवरराइड:
कक्षा java.lang.Object में java.lang.Object
पैरामीटर:
obj - इस UID तुलना करने वाली वस्तु
यह दिखाता है:
true अगर दी गई वस्तु इस एक के बराबर है, और अन्यथा false है
यह भी देखें:
java.lang.Object , java.lang.Object

तार

public String toString()

इस UID का एक स्ट्रिंग प्रतिनिधित्व लौटाता है।

ओवरराइड:
कक्षा java.lang.Object में java.lang.Object
यह दिखाता है:
इस UID का एक स्ट्रिंग प्रतिनिधित्व

लिखो

public void write(DataOutput out)
           throws IOException

मार्शल्स इस UID का एक द्विआधारी प्रतिनिधित्व एक DataOutput उदाहरण के लिए करते हैं।

विशेष रूप से, यह विधि पहले दिए गए स्ट्रीम के DataOutput.writeInt(int) पद्धति को इस UID के unique मान के साथ आमंत्रित करती है, फिर यह स्ट्रीम के DataOutput.writeInt(int) पद्धति को ' UID ' के time मान के साथ आमंत्रित करती है, और फिर यह स्ट्रीम की स्ट्रीम को आमंत्रित करती है। DataOutput.writeInt(int) विधि इस UID की count मान के साथ।

पैरामीटर:
इस UID को लिखने के लिए DataOutput उदाहरण
फेंकता:
IOException - यदि I / O त्रुटि इस ऑपरेशन को करते समय होती है

पढ़ना

public static UID read(DataInput in)
                throws IOException

DataInput उदाहरण से एक बाइनरी प्रतिनिधित्व unmarshalling द्वारा एक नया UID उदाहरण DataInput और देता है।

विशेष रूप से, यह विधि पहले दिए गए स्ट्रीम के DataInput.readInt() विधि को एक unique मान पढ़ने के लिए आमंत्रित करती है, फिर यह एक time मान पढ़ने के लिए स्ट्रीम की DataInput.readInt() विधि को आमंत्रित करती है, फिर यह स्ट्रीम के DataInput.readInt() विधि को लागू करती है। एक count मान पढ़ें, और फिर यह एक नया UID उदाहरण बनाता है और वापस करता है जिसमें unique , time और count मान शामिल होते हैं जो स्ट्रीम से पढ़े गए थे।

पैरामीटर:
in - UID पढ़ने के लिए DataInput उदाहरण
यह दिखाता है:
UID उदाहरण नहीं दिया गया है
फेंकता:
IOException - यदि I / O त्रुटि इस ऑपरेशन को करते समय होती है