应该会抛出异常的吧,比如
ClassNotFoundException 

解决方案 »

  1.   

    抛出Io.EOFeException之类的异常,以下内容来自百度:
    public final Object readObject()
                            throws IOException,
                                   ClassNotFoundException从 ObjectInputStream 读取对象。对象的类、类的签名和类及所有其超类型的非瞬态和非静态字段的值都将被读取。可以使用 writeObject 和 readObject 方法为类重写默认的反序列化。由此对象引用的对象是可传递读取的,这样 readObject 即可重新构造这些对象的完全等价的图形。 
    通过完全还原根对象的所有字段及其引用的对象来完全还原根对象。此时,对象验证回调的执行顺序基于其注册优先级。回调在其个别还原时由对象(按照 readObject 特定方法)进行注册。 当 InputStream 中出现问题或者遇到不应反序列化的类时,将抛出异常。所有异常对于 InputStream 而言都是致命的,将使其处于不确定状态;这将持续到调用方忽略或恢复流状态。 
    指定者:
    接口 ObjectInput 中的 readObject
    返回:
    从流读取的对象 
    抛出: 
    ClassNotFoundException - 找不到序列化对象的类。 
    InvalidClassException - 序列化使用的类出了问题。 
    StreamCorruptedException - 流中的控制信息不一致。 
    OptionalDataException - 在流中而不是对象中找到了基本数据。 
    IOException - 任何常规的输入/输出相关的异常。
    -------------------------------------------------------
    读取成功返回一个对象 Object,失败则会返回异常,你可以利用捕获异常判断是否成功,判断是对象来表示成功。不好判断是否在文件末尾。