जावा में बाहरीकरण क्या है और इसका उपयोग कब करना है?



जावा में बाहरीकरण का उपयोग जावा क्लास को बाइट स्ट्रीम में सहेजने के लिए किया जाता है। एक वर्ग जिसे बाहरी होने की आवश्यकता होती है, उसे बाहरी इंटरफ़ेस लागू करना होगा।

जावा सीरियलाइज़ेशन बहुत कुशल नहीं है। अगरआप बहुत सारी विशेषताओं और गुणों वाली फूली हुई वस्तुओं को क्रमबद्ध करते हैं, आप क्रमबद्ध करना नहीं चाहते हैं। यह वह जगह है जहाँ जावा में बाहरीकरण चित्र में आता है। यह लेख आपको बाहरीकरण के काम को समझने में मदद करेगा।

चलो शुरू करें!





जावा में बाहरीकरण क्या है?

जब भी आपको अनुकूलित करने की आवश्यकता हो, जावा में बाहरीकरण का उपयोग किया जाता है क्रमबद्धता तंत्र। यदि कोई वर्ग एक बाहरी इंटरफ़ेस लागू करता है, तो विधि का उपयोग करके ऑब्जेक्ट का क्रमांकन किया जाएगा writeExternal () । जब रिसीवर के अंत में एक बाहरी वस्तु का पुनर्निर्माण किया जाता है, तो एक तर्क बिना किसी तर्क के निर्माता का उपयोग करके बनाया जाएगा और इस विधि को कहा जाता है readExternal ()।

यह मूल रूप से कस्टम सीरियलाइजेशन के उद्देश्य को पूरा करता है, जहां आप यह तय कर सकते हैं कि किसी स्ट्रीम में क्या स्टोर किया जाए।



आप बाह्यीकरण का उपयोग कब करते हैं?

यदि आप केवल एक भाग को क्रमबद्ध करना चाहते हैं वस्तु , तो बाहरीकरण सबसे अच्छा विकल्प है। आपको किसी वस्तु के केवल आवश्यक क्षेत्रों को क्रमबद्ध करना होगा।

बाहरीकरण इंटरफ़ेस क्या है?

यदि आप क्रमांकन और डी-क्रमांकन प्रक्रिया के दौरान वस्तुओं को पढ़ने और लिखने की प्रक्रिया को नियंत्रित करना चाहते हैं, तो आपको ऑब्जेक्ट की कक्षा को इंटरफ़ेस करने की आवश्यकता है java.io.Externalizable । तभी आप ऑब्जेक्ट के स्टेट्स को पढ़ने और लिखने के लिए अपना कोड लागू कर सकते हैं। विधियों, readExternal () तथा writeExternal () द्वारा परिभाषित किए गए हैं बाहरी करने योग्य इंटरफेस

आइए इन तरीकों को विस्तार से समझते हैं।



डेटा विज्ञान के लिए एक सरल परिचय

readExternal (ObjectInput में)

इंटरफ़ेस का उद्देश्य इस पद्धति को लागू करता है जो की विधियों को कॉल करके अपनी सामग्री को पुनर्स्थापित करने में मदद करता हैडेटा इनपुटआदिम प्रकारों के लिए। यह भी कहता हैreadObjectऑब्जेक्ट्स, स्ट्रिंग्स और सरणियों के लिए। अब चर्चा करते हैं कि इस रीडायरेक्ट पद्धति को कैसे लागू किया जाए।

इस प्रकार readExternal () विधि एक लेता है वस्तु इनपुट , आप इन नियमों की अंतर्निहित धारा से ऑब्जेक्ट की स्थिति को पढ़ने के लिए इसकी विधि का उपयोग कर सकते हैं:

  • आदिम प्रकारों के लिए, आप उपयोग कर सकते हैं readXXX () के तरीके डेटा इनपुटइंटरफेस। वे अर्थात्, readBoolean (), readByte (), readInt (), readLong ()।
  • यदि आपके पास स्ट्रिंग्स, एरेज़ जैसे ऑब्जेक्ट हैं, तो आपका कोई भी कस्टम कक्षाएं , आप का उपयोग करें readObject () तरीका।

उदाहरण:

public void readExternal (ObjectInput in) फेंकता है ClassNotFoundException, IOException {this.code = in.readInt () this.name = (String) in.readObject () this.password = (String) in.readObject () this.birthday = () दिनांक) in.readObject ()}

जैसा कि आप यहाँ देख सकते हैं, मैंने निम्नलिखित विशेषताओं को कोडित, क्रमबद्ध, नाम, पासवर्ड और जन्मदिन के रूप में प्रस्तुत किया है।

बाहरी (ObjectOutput बाहर)

इंटरफ़ेस की वस्तु आदिम मूल्यों या कॉल के लिए DataOutput के तरीकों को कॉल करके सामग्री को बचाने के लिए इस पद्धति को लागू करती है लिखना ऑब्जेक्ट, स्ट्रिंग्स और सरणियों के लिए ऑब्जेक्ट ऑउटपुट की विधि। अब, आइए कार्यान्वयन प्रक्रिया पर एक नज़र डालें।

इस प्रकार writeExternal () विधि एक लेता हैObjectOutput, आप इसकी विधि का उपयोग वस्तु की अवस्थाओं को अंतर्निहित धारा में लिखने के लिए कर सकते हैं, इन नियमों का पालन करें:

  • आदिम प्रकारों के लिए, का उपयोग करें writeXXX () के तरीके DataOutputइंटरफ़ेस, जैसे राइटबुलियन (), राइटबाइट (), लिखनाइंट (), राइटलांग (), आदि।
  • वस्तु प्रकार के लिए , सरणियाँ , आपके कस्टम वर्ग, आप का उपयोग कर सकते हैं लिखना तरीका।

उदाहरण:

सार्वजनिक शून्य लिखना

हालांकि, यहां, आप देख सकते हैं कि मैंने निम्नलिखित विशेषताओं को अनुक्रमित किया है: कोड, नाम, पासवर्ड और जन्मदिन।

अब जावा आर्टिकल में इस एक्सरसाइजेशन के अगले विषय पर आगे बढ़ते हैं, आइए जावा में एक्सरसाइज और सीरियलाइजेशन के बीच के प्रमुख अंतरों पर चर्चा करें।

बाहरीकरण बनाम सीरियलकरण: बाहरीकरण और क्रमांकन के बीच अंतर

यह सबसे अक्सर पूछे जाने वाले में से एक है

पैरामीटरबाहरीकरणसीरियलाइजेशन
प्रक्रियाकस्टम सीरियललाइज़ेशन प्रक्रिया का उपयोग करता हैडिफ़ॉल्ट क्रमांकन प्रक्रिया का उपयोग करता है
यूआईडीयूआईडी की जरूरत नहींइसे serialVersionUID की आवश्यकता है
भंडारणआपको वह डेटा स्टोर करना होगा जिसमें ऑब्जेक्ट हैआप ऑब्जेक्ट को सीधे स्टोर कर सकते हैं
पहुंचबाहरी इंटरफ़ेस इंटरफ़ेस अनुप्रयोग के लिए क्रमबद्धता प्रक्रिया का पूर्ण नियंत्रण प्रदान करता है।
ऐसी कोई पहुँच नहीं

मुझे उम्मीद है कि आप लोग बाह्यीकरण बनाम सीरियलकरण के साथ स्पष्ट हैं। तो इसके साथ, हम 'जावा में बाहरीकरण' पर इस लेख के अंत में आते हैं। मुझे उम्मीद है कि आप लोग आपके साथ साझा किए गए विषयों के साथ स्पष्ट हैं।

मुझे उम्मीद है कि उपर्युक्त सामग्री आपके बढ़ाने में मददगार साबित हुई ज्ञान। पढ़ते रहो, तलाशते रहो!

जावा में फ़ाइल का उपयोग कैसे करें

यह भी देखें 250,000 से अधिक संतुष्ट शिक्षार्थियों के एक नेटवर्क के साथ एक विश्वसनीय ऑनलाइन शिक्षण कंपनी, एडुरेका द्वारा, दुनिया भर में फैली हुई है। एडुर्का के जावा जे 2 ईई और एसओए प्रशिक्षण और प्रमाणन पाठ्यक्रम उन छात्रों और पेशेवरों के लिए डिज़ाइन किया गया है जो जावा डेवलपर बनना चाहते हैं। पाठ्यक्रम आपको जावा प्रोग्रामिंग में एक शुरुआत देने के लिए डिज़ाइन किया गया है और आपको विभिन्न के साथ कोर और उन्नत जावा अवधारणाओं दोनों के लिए प्रशिक्षित करता है हाइबरनेट और स्प्रिंग की तरह।