DEPARTMENT OF
COMPUTER SCIENCE & ENGINEERING
WORKSHEET 3
Student Name: Khushi Chaudhary UID: 22BCS13783
Branch: BE-CSE Section/Group: 712-A
Semester: 3rd Date of Performance: 27 oct.
Subject Name: Java Programming Subject Code: 22CSH-201
Aim: Define a person class that implements serializable the person classs has a
name, age and contacts attributes.{In a main create a person objecr. Cast the object
back to person. Finally, Print the deserialized person’s information. Remember to
handle exceptions in code.
1. Source Code:
import java.io.*;
import java.util.Scanner;
class Person implements Serializable {
private static final long serialVersionUID = 1L;
private String name;
private int age;
private long contact;
public Person(String name, int age, long contact) {
this.name = name;
this.age = age;
this.contact = contact;
}
public String getName() {
return name;
}
public int getAge() {
return age;
}
DEPARTMENT OF
COMPUTER SCIENCE & ENGINEERING
public long getContact() {
return contact;
}
}
public class Main {
public static void main(String[] args) {
// Create a Person object based on user input
Person person = createPersonFromUserInput();
// Serialize the Person object
serializePerson(person);
// Deserialize and print the Person object
deserializeAndPrintPerson();
}
private static Person createPersonFromUserInput() {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter name: ");
String name = scanner.nextLine();
System.out.print("Enter age: ");
int age = scanner.nextInt();
System.out.print("Enter contact: ");
long contact = scanner.nextLong();
return new Person(name, age, contact);
}
private static void serializePerson(Person person) {
try (FileOutputStream fileOut = new FileOutputStream("person.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut)) {
out.writeObject(person);
System.out.println("Person object serialized successfully.");
} catch (IOException e) {
e.printStackTrace();
}
}
DEPARTMENT OF
COMPUTER SCIENCE & ENGINEERING
private static void deserializeAndPrintPerson() {
try (FileInputStream fileIn = new FileInputStream("person.ser");
ObjectInputStream in = new ObjectInputStream(fileIn)) {
Person person = (Person) in.readObject();
System.out.println("Deserialized Person Data:");
System.out.println("Name: " + person.getName());
System.out.println("Age: " + person.getAge());
System.out.println("Contact: " + person.getContact());
} catch (IOException | ClassNotFoundException e) {
e.printStackTrace();
}
}
}
2. Screenshot of Outputs:
3. Learning Outcomes
i) Learnt about scanner class.
ii) Learnt about how to handle exception.
iii) Learnt about desearialization.