자바가 가진 데이터를 hello.dat
라는 파일에 저장하려면
스트림을 쓰면 외부 자원이므로 꼭 닫아줘야한다. 자바 내부 객체는 자동으로 GC가 되지만 외부 자원은 그렇지 못하기 때문이다.
현대 컴퓨터는 대부분 byte 단위로 데이터를 주고 받는다.
이렇게 데이터를 주고 받는 것을 I/O라고 한다.
I/O의 대상은 파일, 네트워크, 콘솔 등이 있을 수 있는데 각각 데이터를 주고 받는 방식이 다르면 불편함
→ InputStream, OutputStream으로 추상화하였고, 구현체도 다 제공한다.