老师要是想导出学校管理中班级信息这么写哪错了?

老师要是想导出学校管理中班级信息这么写哪错了?

 这个是学校测试方法中
 case 8:
    try {
     FileOutputStream fos=new FileOutputStream("D:\\File\\school.txt");
     ObjectOutputStream oos=new ObjectOutputStream(fos);
     oos.writeObject(school);
     oos.flush();
     oos.close();
     fos.close();
    } catch (FileNotFoundException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
    break;

在学校类中已实现Serializable接口

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,这里老师测试代码是可以正常导出歌单内容,同学刷新一下再来查看文件中是否有内容了。

        这里同学是报错了吗,建议将具体的报错截图贴出,如果还是不能解决,建议同学将具体的代码贴出到"我要回答"中,便于根据代码定位问题,注意不要贴在回复中。

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!

  • 慕沐0220913 提问者 #1
    老师代码放不了太多了
    2020-01-08 09:07:51
  • 慕沐0220913 提问者 #2
    在学校中不创建班级可以正常导出,在电脑中也创建了文件,但是创建了班级就会报错
    2020-01-08 09:11:44
提问者 慕沐0220913 2020-01-08 09:09:23


java.io.NotSerializableException: com.student.administe.BnJi
************************************************
   ***学校管理***  at java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1185)
 at java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
 at java.base/java.util.HashMap.internalWriteEntries(HashMap.java:1837)
 at java.base/java.util.HashMap.writeObject(HashMap.java:1408)
 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
 at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
 at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
 at java.base/java.lang.reflect.Method.invoke(Method.java:567)
 at java.base/java.io.ObjectStreamClass.invokeWriteObject(ObjectStreamClass.java:1130)
 at java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1497)
 at java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
 at java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
 at java.base/java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1553)
 at java.base/java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1510)
 at java.base/java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1433)
 at java.base/java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1179)
 at java.base/java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:349)
 at com.text.Test.testSchool(Test.java:342)
 at com.text.Test.test(Test.java:391)
 at com.text.Test.main(Test.java:402)
 这个是报错信息
  • 同学你好,根据同学的报错信息,NotSerializableException没有为对应的类BnJi实现Serializable接口,同学直接添加school,此时school中会有多个BnJi,对应为BnJi实现Serializable接口,修改后再来重试一下。如果我的回答解决了你的疑惑,请采纳!祝学习愉快!
    2020-01-08 10:17:11
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师