1. 입출력

Input과 Output의 약자, 컴퓨터 내부 또는 외부 장치와 프로그램 간의 데이터를 주고 받는것

장치와 입출력을 위해서는 하드웨어 장치에 직접 접근이 필요한데 다양한 매체에 존재하는 데이터들을 사용하기 위해 입출력 데이터를 처리할 공통적인 방법으로 스트림을 이용

2. 스트림(Stream)

입출력 장치에서 데이터를 읽고 쓰기 위해서 자바에서 제공하는 클래스

모든 스트림은 단방향이며 각각의 장치마다 연결할 수 있는 스트림이 존재한다.

하나의 스트림으로 입출력을 동시에 수행할 수 없으므로 동시에 수행하려면 2개의 스트림이 필요하다.

https://blog.kakaocdn.net/dn/ekdsqb/btq6pUVJsSP/ncuYuNgjjbCUWRsHAmETQk/img.png

3. 입출력 스트림

3.1 스트림 개념

연속된 데이터의 단방향 흐름을 추상화한다.

데이터 소스와 상관없이 적용할 수 있어 매우 효과적이다.

3.2 입출력 스트림의 특징