林纳 2019-04-25 09:15
浏览 156

SCJP一道选择题,为什么CardPlayer c2 = (CardPlayer) is.readObject();单独创建父类对象?

代码如下:

class Player {
 Player() {
  System.out.print("p");
 }
}

public class CardPlayer extends Player implements Serializable {
 CardPlayer() {
  System.out.print("c");
 }

 public static void main(String[] args) {
  CardPlayer c1 = new CardPlayer();
  try {
   FileOutputStream fos = new FileOutputStream("play.txt");
   ObjectOutputStream os = new ObjectOutputStream(fos);
   os.writeObject(c1);
   os.close();
   FileInputStream fis = new FileInputStream("play.txt");
   ObjectInputStream is = new ObjectInputStream(fis);
   CardPlayer c2 = (CardPlayer) is.readObject();
   is.close();
  } catch (Exception x) {
  }
 }
}

为什么最后输出结果是“pcp”而不是“pcc”?

  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥20 求数据集和代码#有偿答复
    • ¥15 关于下拉菜单选项关联的问题
    • ¥20 java-OJ-健康体检
    • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
    • ¥15 使用phpstudy在云服务器上搭建个人网站
    • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
    • ¥15 vue3+express部署到nginx
    • ¥20 搭建pt1000三线制高精度测温电路
    • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
    • ¥15 画两个图 python或R