JavaIntermediate#serialization

What is the purpose of serialVersionUID?

A unique identifier for a Serializable class used during deserialization to verify the sender and receiver classes are compatible. If not declared explicitly, the JVM generates one based on class details, which can silently break compatibility across versions.

Example
class User implements Serializable {
  private static final long serialVersionUID = 1L; // fixed manually for version safety
}

Related Questions

1
JavaIntermediate#serialization

What happens to static and transient fields during serialization?

Open
2
JavaAdvanced#serialization

How can you customize the serialization process?

Open
3
JavaIntermediate#design-patterns

What is the Factory design pattern?

Open