什么是serialVersionUID?
serialVersionUID用作Serializable类中的版本控件。如果您没有显式声明serialVersionUID,JVM将根据您的Serializable类的各个方面自动为您执行此操作,如[Java(TM)对象序列化规范中所述](http://docs.oracle.com/javase/1.5.0/docs/api/java/io/Serializable.html)。
默认的serialVersionUID有什么问题?
如果没有声明serialVersionUID,JVM将使用自己的算法生成默认的SerialVersionUID,您可以在[此处](http://docs.oracle.com/javase/6/docs/platform/serialization/spec/class.html#4100)检查算法。默认的serialVersionUID计算对类详细信息非常敏感,可能因不同的JVM实现而异,并且在反序列化过程中会导致意外的InvalidClassExceptions。