▶ 스트림
프로그램상의 데이터를 외부매체(모니터, 스피커, "파일")로 출력하거나 입력장치(키보드, 마우스, "파일")로 입력받는 과정을 진행하고자 한다면 프로그램과 외부매체와의 "통로"를 만들어줘야하는데 이때 통로를 스트림이라고 부른다.
■ 스트림의 특징
- 단방향 : 입력이면 입력만, 출력이면 출력만 존재한다. (즉, 동시에 입출력을 하고자 한다면 하나의 스트림으로는 안된다.)
- 선입선출(FIFO) : 먼저 전달한 값이 먼저 나오게 된다.
- 시간지연 문제가 발생할 수 있다.
■ 스트림의 구분
1. 통로의 사이즈
- 바이트 스트림 : 1BYTE짜리가 이동할 수 있을 정도의 사이즈(좁은 통로) => 입력(xxxInputStream) / 출력(xxxOutputStream)
- 문자 스트림 : 2BYTE짜리가 이동할 수 있을 정도의 사이즈(큰 통로) => 입력(xxxReader) / 출력(xxxWriter)
2.외부매체와의 직접적인 연결 여부
- 기반스트림 : 외부매체와 직접적으로 연결되는 통로
- 보조스트림 : 기반스트림만으로 부족한 성능을 향상시켜주는 용도의 스트림(외부매체와 직접연결x) => 단독 사용 불가
단, 보조스트림은 단독으로 사용이 안된다. 외부매체와 직접 연결되는 기반스트림이 필수다.
'JAVA' 카테고리의 다른 글
JAVA (26) FileCharDao (0) | 2023.04.15 |
---|---|
JAVA (25) FileByteDao (0) | 2023.04.13 |
JAVA (23) File (0) | 2023.04.13 |
JAVA (22) CustomException (0) | 2023.04.12 |
JAVA (21) CheckedException (0) | 2023.04.12 |