What does it mean when it asks to update this class (Class Person) so it can be
ID: 650043 • Letter: W
Question
What does it mean when it asks to update this class (Class Person) so it can be serialized?
import java.io.Serializable;
public class Person{
private String firstName;
private String lastName;
private int age;
public Person(String firstName, String lastName){
this.firstName = firstName;
this.lastName = lastName;
}
public String getFirstName(){
return firstName;
}
public void setFirstName(String firstName){
this.firstName = firstName;
}
public String getLastName(){
return firstName;
}
public void setLastName(String lastName){
this.lastName = lastName;
}
@Override
public String toString(){
return String.format("%s %s", firstName, lastName);
}
}
Explanation / Answer
Answer:
Meaning to update this class (Class Person) so it can be serialized:
Serialization : Serialization is what you do to an instance of an object if you want to dump it to a raw buffer, save it to disk, transport it in a binary stream.
Example : sending an object over a network socket.
(OR) Otherwise create a serialized binary representation of an object.
If you have no intention of serializing your class, you can add the annotation just above your class @SuppressWarnings("serial").
If you are going to serialize, then you have a host of things to worry about all centered around the proper use of UUID.
Basically, the UUID is a way to "version" an object you would serialize so that whatever process is de-serializing knows that it's de-serializing properly.
Any class that can be serialized (i.e. implements Serializable) should declare that UID and it must be changed whenever anything changes that affects the serialization (additional fields, removed fields, change of field order, ...).
The field's value is checked during deserialization and if the value of the serialized object does not equal the value of the class in the current VM, an exception is thrown.
Note: This value is special in that it is serialized with the object even though it is static, for the reasons described above.
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.