Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा सीरियलाइज़ेशन में ऑब्जेक्ट ग्राफ़

ऑब्जेक्ट ग्राफ़ में ऑब्जेक्ट्स का एक सेट होता है जो स्वचालित रूप से क्रमबद्ध होता है, यह देखते हुए कि जिस ऑब्जेक्ट में संदर्भ होता है वह भी क्रमबद्ध होता है। कोई भी वस्तु जो क्रमबद्ध होती है और जिसमें एक वस्तु संदर्भ होता है, वस्तु संदर्भ को JVM द्वारा क्रमबद्ध किया जाएगा।

उदाहरण

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
class One implements Serializable{
   Two s2 = new Two();
}
class Two implements Serializable{
   Three s3 = new Three();
}
class Three implements Serializable{
   int i = 34;
   int j = 67;
}
public class Demo_Serialize{
   public static void main(String args[]) throws Exception{
      One s1 = new One();
      FileOutputStream my_fos = new FileOutputStream("abc.ser");
      ObjectOutputStream my_oos = new ObjectOutputStream(my_fos);
      my_oos.writeObject(s1);
      my_fos.close();
      my_oos.close();
      FileInputStream my_fis = new FileInputStream("abc.ser");
      ObjectInputStream my_ois = new ObjectInputStream(my_fis);
      One my_obj = (One) my_ois.readObject();
      my_fis.close();
      my_ois.close();
      System.out.println("Value of i after it is serialized is " + my_obj.s2.s3.i);
      System.out.println("Value of j after it is serialized is "+my_obj.s2.s3.j);
   }
}

आउटपुट

Value of i after it is serialized is 34
Value of j after it is serialized is 67

'वन' नाम का एक वर्ग 'सीरियलज़ेबल' वर्ग से विरासत में मिलता है। यहां, एक अलग वर्ग का एक और उदाहरण बनाया गया है। एक ही वर्ग को 'Serializable' वर्ग विरासत में मिला है। फिर से, इस वर्ग के भीतर एक अलग उदाहरण बनाया जाता है।

एक अन्य वर्ग को 'Serializable' वर्ग विरासत में मिला है। यहां, दो पूर्णांकों को परिभाषित किया गया है, और 'Demo_Serialize' नामक एक अन्य वर्ग बनाया गया है। यहां, मुख्य कार्य परिभाषित किया गया है। प्रथम श्रेणी का एक उदाहरण परिभाषित किया गया है, और FileOutputStream और ObjectOutputStream का एक उदाहरण बनाया गया है। इन धाराओं का उपयोग करके वस्तुओं को लिखा जाता है। बाद में नालों को बंद कर दिया जाता है। यह डेटा को क्रमबद्ध करने के लिए एक बार फिर किया जाता है। प्रासंगिक आउटपुट कंसोल पर प्रदर्शित होता है।


  1. जावा में इंटरफ़ेस

    एक इंटरफ़ेस जावा में एक संदर्भ प्रकार है। यह एक वर्ग के समान है। यह अमूर्त विधियों का एक संग्रह है। एक वर्ग एक इंटरफ़ेस लागू करता है, जिससे इंटरफ़ेस के अमूर्त तरीकों को विरासत में मिलता है। अमूर्त विधियों के साथ, एक इंटरफ़ेस में स्थिरांक, डिफ़ॉल्ट विधियाँ, स्थिर विधियाँ और नेस्टेड प्रकार भी हो सकते

  1. जावा में सार वर्ग

    जिस वर्ग की घोषणा में सार कीवर्ड होता है उसे अमूर्त वर्ग के रूप में जाना जाता है। एब्स्ट्रैक्ट क्लासेस में एब्सट्रैक्ट मेथड्स हो भी सकते हैं या नहीं भी हो सकते हैं, यानी बॉडी के बिना मेथड्स ( public void get(); ) लेकिन, यदि किसी वर्ग में कम से कम एक सार विधि है, तो कक्षा को सार घोषित किया जाना चाहि

  1. जावा में अंतिम कक्षा

    किसी वर्ग को अंतिम घोषित करने का मुख्य उद्देश्य वर्ग को उपवर्ग होने से रोकना है। यदि किसी वर्ग को अंतिम के रूप में चिह्नित किया जाता है तो कोई भी वर्ग अंतिम वर्ग से किसी भी विशेषता को प्राप्त नहीं कर सकता है। public final class Test {    // body of class }