关于序列化,报错没有构造方法

图片说明
api里明明有这个方法的,为何它说没有定义

错误一般是由于要反序列化的类或者它的父类(如:继承了Dictionary类)实现了ISerializable接口而该类没有定义序列化构造函数,这时候只要把序列化构造函数加上去就可以反序列化了。需要注意的是,一个类或者它的父类实现ISerializable接口就表示启用了自定义序列化,需要按照自定义序列化的规则编写序列化构造函数和GetObjectData函数。

        try {
            ObjectOutputStream stream = new ObjectOutputStream(new FileOutputStream(""));
        } catch (FileNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

你要抛出异常,楼上那样。

要抛异常或catch抓取异常。

这样写就对了。
try {
ObjectOutputStream oos = new ObjectOutputStream(
new FileOutputStream(""));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

楼上正解,文件都读取需抛出IO异常

那么明显的红线错误都不看一下吗?
需要抛出或catch捕获异常