课程
/后端开发
/Java
/文件传输基础——Java IO流
函数中Bar2 bar2 = new Bar2();
oos.writeObject(bar2);
除了序列bar2对象外,还有上面作用?为什么控制台上会bar bar1 bar2等输出
2015-08-16
源自:文件传输基础——Java IO流 6-3
正在回答
我的理解是
class bar1{
public bar1(){
........//构造函数内容
}
class bar2 extends bar1{
public bar2(){
super();//隐藏调用该语句,效果就是调用父类的构造函数
...........//bar2的构造函数内容
子类的构造方法中,第一句有一个隐式的 super(); 调用父类的构造方法,然后再执行子类构造方法的方法体。bar2的构造方法中输出“bar2”之前调用其父类bar1的构造方法,bar1的构造方法中在输出“bar1”之前调用其父类bar的构造方法,输出 bar ,然后执行bar1的方法体输出bar1,之后再执行bar2的方法体输出bar2,结果就是 bar bar1 bar2
海与千巷
举报
为您介绍IO流的使用,以及对象的序列化和反序列化的内容
3 回答为什么没有实现Serializable的父类的构造函数,就会在反序列化子类的过程中被调用
6 回答对于子类序列化接口,父类没有实现序列化接口构造函数不会被调用有什么用?
3 回答关于父类没有无参构造函数的反序列化问题
1 回答子类对象反序列化时 为什么要调用没有实现序列化接口的父类的构造方法?
2 回答反序列化时创建子类,从文件中读到的是父类还是父类的对象,如果是父类,那不是也调用了父类的构造方法吗,为啥没有输出