Serialization


  1. What is the output of this program?
    import java.io.*;
    public class serialization_Example
    {
    public static void main(String[] args)
    {
    try
    {
    Newclass obj1 = new Newclass("InterviewMania", -10, 3.2e20);
    FileOutputStream fos = new FileOutputStream("serial");
    ObjectOutputStream oos = new ObjectOutputStream(fos);
    oos.writeObject(obj1);
    oos.flush();
    oos.close();
    }
    catch(Exception e)
    {
    System.out.println("Serialization" + e);
    System.exit(0);
    }
    try
    {
    int p;
    FileInputStream fis = new FileInputStream("serial");
    ObjectInputStream ois = new ObjectInputStream(fis);
    p = ois.readInt();
    ois.close();
    System.out.println(p);
    }
    catch (Exception e)
    {
    System.out.print("deserialization");
    System.exit(0);
    }
    }
    }
    class Newclass implements Serializable
    {
    String str;
    int k;
    double q;
    Newclass(String str, int k, double q)
    {
    this.q = q;
    this.k = k;
    this.str = str;
    }
    }











  1. View Hint View Answer Discuss in Forum

    NA

    Correct Option: D

    p = ois.readInt(); will try to read an integer value from the stream ‘serial’ created before, since stream contains an object of Myclass hence error will occur and it will be catched by catch printing deserialization.


  1. What is the output of this program?
    import java.io.*;
    public class serialization_Example
    {
    public static void main(String[] args)
    {
    try
    {
    Newclass obj1 = new Newclass("InterviewMania", -10, 3.2e20);
    FileOutputStream fos = new FileOutputStream("serial");
    ObjectOutputStream oos = new ObjectOutputStream(fos);
    oos.writeObject(obj1);
    oos.flush();
    oos.close();
    }
    catch(Exception e)
    {
    System.out.println("Serialization" + e);
    System.exit(0);
    }
    try
    {
    Newclass obj2;
    FileInputStream fis = new FileInputStream("serial");
    ObjectInputStream ois = new ObjectInputStream(fis);
    obj2 = (Newclass)ois.readObject();
    ois.close();
    System.out.println(obj2);
    }
    catch (Exception e)
    {
    System.out.print("deserialization" + e);
    System.exit(0);
    }
    }
    }
    class Newclass implements Serializable
    {
    String str;
    int k;
    double p;
    Newclass (String str, int k, double p)
    {
    this.p = p;
    this.k = k;
    this.str = str;
    }
    }











  1. View Hint View Answer Discuss in Forum

    NA

    Correct Option: A

    Myclass@776ec8df



  1. Which of these is an interface for control over serialization and deserialization?











  1. View Hint View Answer Discuss in Forum

    NA

    Correct Option: B

    FileFilter


  1. Which of these is a process of writing the state of an object to a byte stream?











  1. View Hint View Answer Discuss in Forum

    NA

    Correct Option: D

    Serialization is the process of writing the state of an object to a byte stream. This is used when you want to save the state of your program to a persistent storage area.



  1. Which of these process occur automatically by the java runtime system?











  1. View Hint View Answer Discuss in Forum

    NA

    Correct Option: B

    Serialization and deserialization occur automatically by java runtime system, Garbage collection also occur automatically but is done by CPU or the operating system not by the java runtime system.