BufferedOutputStream은 buffer를 거쳐 아래 stream으로 배출한다

write가 즉시 파일에 도달하지 않아도 buffer가 가득 차거나 flush·close가 호출되면 내려갑니다.

  1. 1

    write

    바깥 API

  2. 2

    buffer

    메모리에 누적

  3. 3

    full/flush

    아래로 배출

  4. 4

    file stream

    장치 write

  5. 5

    close

    flush 후 연쇄 종료

핵심: 가장 바깥 스트림을 닫으면 남은 데이터를 비운 뒤 안쪽 close를 연쇄 호출합니다.