课程
/后端开发
/Java
/文件传输基础——Java IO流
老师在上面说 如果实现了序列化接口那么其父类的则看不见父类的构造方法被调用。
如果是这样的话,最后的输出结果难道不应该是
bar1...
bar2...
吗?为什么我的结果确实连父类的构造方法也调用了?
2016-09-14
源自:文件传输基础——Java IO流
正在回答
因为 你是 Bar2 bar2 = new Bar2(); bar2 = (Bar2)ois.readObject();
但是老师写的是 Bar2 bar2 = (Bar2)ois.readObject(); 这里要注意的是 老师并没有去new一个Bar2对象
而你却是先new出来的 肯定会调用父类的构造函数。
刻骨铭心__ 提问者
举报
为您介绍IO流的使用,以及对象的序列化和反序列化的内容
1 回答子类对象反序列化时 为什么要调用没有实现序列化接口的父类的构造方法?
3 回答关于父类没有无参构造函数的反序列化问题
2 回答反序列化时创建子类,从文件中读到的是父类还是父类的对象,如果是父类,那不是也调用了父类的构造方法吗,为啥没有输出
6 回答对于子类序列化接口,父类没有实现序列化接口构造函数不会被调用有什么用?
2 回答父类实现序列化接口。。。