जब आप serialVersionUID (35L653491060394677L) का निर्माण करने के बजाय serialVersionUID (1L) का उपयोग करते हैं तो आप कुछ कह रहे हैं।
आप कह रहे हैं कि आप 100% आश्वस्त हैं कि कोई भी प्रणाली इस वर्ग को कभी नहीं छूएगी जिसके पास इस श्रेणी का असंगत अनुक्रमित संस्करण है जिसका संस्करण संख्या 1 है।
यदि आप अज्ञात होने के लिए धारावाहिक संस्करण इतिहास के लिए किसी भी बहाने के बारे में सोच सकते हैं, तो आत्मविश्वास के साथ कहना मुश्किल हो सकता है। यह जीवनकाल में, एक सफल वर्ग कई लोगों द्वारा बनाए रखा जाएगा, कई परियोजनाओं में रहेगा, और कई प्रणालियों में निवास करेगा।
तुम उस पर तड़प सकते हो। या आप हारने की उम्मीद कर लॉटरी खेल सकते हैं। यदि आप संस्करण उत्पन्न करते हैं तो आपके पास कुछ गलत होने की संभावना है। यदि आप "अरे मैं शर्त लगाता हूं कि कोई भी 1 का उपयोग नहीं करता है" तो आपके ऑड्स छोटे से बड़े हैं। यह ठीक है क्योंकि हम सभी सोचते हैं कि 0 और 1 शांत हैं कि आपके पास उन्हें मारने की अधिक संभावना है।
-
जब आप serialVersionUID (1L) का उपयोग करने के बजाय serialVersionUID (3567653491060394677L) उत्पन्न करते हैं तो आप कुछ कह रहे हैं।
आप कह रहे हैं कि लोगों ने मैन्युअल रूप से इस वर्ग के इतिहास पर अन्य संस्करण संख्याएं बनाई या उत्पन्न की हैं और आपको परवाह नहीं है क्योंकि लोंग्स बड़ी संख्या में धोखाधड़ी कर रहे हैं।
किसी भी तरह से जब तक आप पूरी तरह से वर्जन संख्याओं के इतिहास को नहीं जानते हैं, जब वह पूरे ब्रह्मांड में कक्षा का उपयोग करता है, जहां उसका अस्तित्व है या कभी मौजूद होगा, तो आप एक मौका ले रहे हैं। यदि आपके पास 100% सुनिश्चित करने का समय है 1 AOK है, तो इसके लिए जाएं। यदि यह बहुत काम की है, तो आगे बढ़ें और नेत्रहीन संख्या उत्पन्न करें। आपको लॉटरी जीतने की संभावना अधिक है कि आप गलत हैं। अगर ऐसा होता है, तो मुझे बताएं और मैं आपको एक बीयर खरीदूंगा।
लॉटरी खेलने की इस सारी बात के साथ मैंने आपको यह आभास दिया होगा कि क्रमिक रूप से serialVersionUID उत्पन्न होता है। वास्तव में जब तक संख्याओं की श्रेणी समान रूप से एक लंबे समय के हर संभव मूल्य पर वितरित की जाएगी जो ठीक होगी। हालाँकि, यह वास्तव में इस तरह किया गया है:
http://docs.oracle.com/javase/6/docs/platform/serialization/spec/class.html#4100
एकमात्र अंतर जो आपको मिलता है वह यह है कि आपको यादृच्छिक के स्रोत की आवश्यकता नहीं है। आप परिणाम बदलने के लिए स्वयं कक्षा में हुए परिवर्तनों का उपयोग कर रहे हैं। लेकिन कबूतर के सिद्धांत के अनुसार अभी भी एक मौका है कि यह गलत हो सकता है और टकराव हो सकता है। यह सिर्फ अविश्वसनीय रूप से संभावना नहीं है। तो सौभाग्य है कि मुझे एक बीयर मिल रही है।
हालाँकि, भले ही वर्ग केवल एक प्रणाली और एक कोड आधार में रहेगा, यह सोचकर कि संख्या को हाथ से बढ़ाने से आपको टक्करों का शून्य मौका मिलता है, इसका मतलब है कि आप इंसानों को नहीं समझते हैं। :)