// 对象的序列化:可对对象进行持久化的存储。如果你想把一个对象通过流的方式写到指定的目的中,那么该对象必须进行序列化,所谓序列化就是给对象标记下(Uid是根据类中的成员进行标示的,把类进行唯一标示)。如果之前把一个对象存入到了硬盘中,在后来读取时候(该类文件成员被修改),那么此类的默认uid也会改变。读取过程中会抛出java.io.InvalidClassException异常,如果之前你已经生成了UID号,没有使用默认的。那么就不会报出此异常。(文件中对象序列号必须和class文件中的序列号必须是一样的)。
我试了一下,改变类文件。类UID虽然和文件中存的还是一样的,但是我在新生成的类中加了一个字段并对它赋值,但是从文件中读取的对象在调用这个字段的时候为什么总是为空?
想请大神帮忙解释下。
|