Home » Java programming language

Java ObjectInputStream defaultReadObject() Method with Example

ObjectInputStream Class defaultReadObject() method: Here, we are going to learn about the defaultReadObject() method of ObjectInputStream Class with its syntax and example.
Submitted by Preeti Jain, on April 04, 2020

ObjectInputStream Class defaultReadObject() method

  • defaultReadObject() method is available in java.io package.
  • defaultReadObject() method is used to read the non-static and non-transient field of the current class from this ObjectInputStream and it involves indirectly with the help of readObject() method of this class.
  • defaultReadObject() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
  • defaultReadObject() method may throw an exception at the time of reading the default object.
    IOException: This exception may throw when getting any input/output error while performing.

Syntax:

    public void defaultReadObject();

Parameter(s):

  • It does not accept any parameter.

Return value:

The return type of the method is void, it returns nothing.

Example:

// Java program to demonstrate the example 
// of void defaultReadObject() method 
// of ObjectInputStream

import java.io.*;

public class DefaultReadObject {
 public static void main(String[] args) throws Exception {
  // Instantiates ObjectOutputStream , ObjectInputStream 
  // FileInputStream and FileOutputStream
  FileOutputStream file_out_stm = new FileOutputStream("D:\\includehelp.txt");
  ObjectOutputStream obj_out_stm = new ObjectOutputStream(file_out_stm);
  FileInputStream file_in_stm = new FileInputStream("D:\\includehelp.txt");
  ObjectInputStream obj_in_stm = new ObjectInputStream(file_in_stm);

  // By using writeObject() method is to
  // write object to Serialized class
  obj_out_stm.writeObject(new DefaultObjectClass());
  obj_out_stm.flush();

  // By using readObject() method is to
  // read an object from the Serialized class
  DefaultObjectClass def_obj = (DefaultObjectClass) obj_in_stm.readObject();

  // Using both readObject and defaultReadObject(); 
  System.out.println("obj_in_stm.defaultReadObject(): " + def_obj.str);
  System.out.println("obj_in_stm.defaultReadObject(): " + def_obj.in);
 }

 static class DefaultObjectClass implements Serializable {
  String str = "Java Programming";
  Integer in = new Integer(10);
  private void readObject(ObjectInputStream obj_stm) throws IOException, ClassNotFoundException {
   // By using defaultReadObject() method is 
   // to read non-static fields of the present 
   // class from the ObjectInputStream
   obj_stm.defaultReadObject();
  }
 }
}

Output

obj_in_stm.defaultReadObject(): Java Programming
obj_in_stm.defaultReadObject(): 10


Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.