ObjectOutputStream中有flush()方法,是不是其中也用到了缓冲区?

ObjectOutputStream中有flush()方法,是不是其中也用到了缓冲区?

public class GoodsTest {
   public static void main(String[] args) {
       Goods goods1 = new Goods("good7", "电脑", 3000.0, "");
       try {
           FileOutputStream fos = new FileOutputStream("imooc.txt");
           ObjectOutputStream oos=new ObjectOutputStream(fos);
           oos.writeObject(goods1);
           oos.flush();
           fos.close();
           oos.close();

       } catch (FileNotFoundException e) {
           e.printStackTrace();
       }catch(IOException e){
           e.printStackTrace();
       }

   }

正在回答

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

1回答

您好,ObjectOutputStream这个流也是有缓冲的。祝学习愉快!

  • 慕仰4381305 提问者 #1
    是这个类里面就内置了缓冲区吗,所有的write方法(包括write writeBoolean等等)最后都要flush一下吗
    2018-10-17 14:15:54
  • 好帮手慕查理 回复 提问者 慕仰4381305 #2
    您好,ObjectOutputStream设置了缓冲区。write方法最后添加或者不添加flush都可以,建议添加。最后使用close时都会清空。祝学习愉快!
    2018-10-17 16:14:07
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

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

在线咨询

领取优惠

免费试听

领取大纲

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