কম্পিউটার

জাভা সিরিয়ালাইজেশনে অবজেক্ট গ্রাফ


একটি অবজেক্ট গ্রাফে অবজেক্টের একটি সেট থাকে যা স্বয়ংক্রিয়ভাবে ক্রমিক করা হয় কারণ যে বস্তুটিতে রেফারেন্স রয়েছে সেটিও ক্রমিক করা হয়। যেকোন অবজেক্ট যা সিরিয়ালাইজড এবং একটি অবজেক্ট রেফারেন্স ধারণ করে, অবজেক্ট রেফারেন্স 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' বর্গ দ্বারা। আবার, এই ক্লাসের মধ্যে একটি ভিন্ন উদাহরণ তৈরি করা হয়েছে।

আরেকটি শ্রেণী উত্তরাধিকারসূত্রে পায় 'ক্রমিকযোগ্য' শ্রেণী। এখানে, দুটি পূর্ণসংখ্যা সংজ্ঞায়িত করা হয়েছে, এবং 'ডেমো_সিরিয়ালাইজ' নামে আরেকটি ক্লাস তৈরি করা হয়েছে। এখানে, প্রধান ফাংশন সংজ্ঞায়িত করা হয়. সংজ্ঞায়িত প্রথম শ্রেণীর একটি উদাহরণ এবং FileOutputStream এবং ObjectOutputStream এর একটি উদাহরণ তৈরি করা হয়েছে। বস্তুগুলি এই স্ট্রিমগুলি ব্যবহার করে লেখা হয়। পরে, স্রোতধারা বন্ধ করা হয়। ডেটা সিরিয়ালাইজ করার জন্য এটি আরও একবার করা হয়। প্রাসঙ্গিক আউটপুট কনসোলে প্রদর্শিত হয়।


  1. আমরা জাভাতে একটি বিমূর্ত শ্রেণীর একটি বস্তু তৈরি করতে পারি?

  2. জাভাতে ইন্টারফেস

  3. জাভাতে বিমূর্ত ক্লাস

  4. জাভাতে ফাইনাল ক্লাস