Employee.java Source code

Java tutorial

Introduction

Here is the source code for Employee.java

Source

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;

class Employee implements Serializable {
    private String name;

    private double salary;

    Employee(String name, double salary) {
        this.name = name;
        this.salary = salary;
    }

    String getName() {
        return name;
    }

    double getSalary() {
        return salary;
    }

    private void writeObject(ObjectOutputStream oos) throws IOException {
        oos.defaultWriteObject();
        System.out.println("Serializing Employee object\n");
    }

    private void readObject(ObjectInputStream ois) throws Exception {
        ois.defaultReadObject();
        salary += 100;
        System.out.println("Deserializing Employee object");
    }
}

class Main {
    public static void main(String[] args) throws Exception {
        Employee e1 = new Employee("A", 45000.0);
        System.out.println(e1.getName() + " " + e1.getSalary());

        FileOutputStream fos = new FileOutputStream("employee.ser");
        ObjectOutputStream oos = new ObjectOutputStream(fos);
        oos.writeObject(e1);

        FileInputStream fis = new FileInputStream("employee.ser");
        ObjectInputStream ois = new ObjectInputStream(fis);

        Employee e2 = (Employee) ois.readObject();
        System.out.println(e2.getName() + " " + e2.getSalary());

    }
}