12장 스트림 : 자료구조(자바 내 데이터) 통합관리하기 편하도록 제공하는 API
13장 입출력 스트림 : 파일, 네트워크, 키보드, 마우스등과 같은 다양한 입출력 소스를 이용하여 데이터 송수신
다양한 입출력 장치가 있고 장치마다 코드를 다르게 구현하면 호환성이 떨어진다.
-> 일관성 있는 코드 구현을 위해 입출력 스트림 이용
12장 스트림은 병렬처리(순차x)
- 4
: 버퍼(임시 저장공간)가 빌 때까지 지연된다.
- 바이트 스트림(인/아웃풋), 문자 스트림(리더/라이터)
- System.out
인/아웃풋 스트림으로 나뉜다.
문자 깨짐 현상 발생
-> 보완 위해 문자 스트림이 생겼다.
문자 깨짐 현상 방지를 위해 사용한다.
아스키코드(영어, 숫자, 특수문자)
유니코드(각 나라의 언어, 그 외 특수문자). 아스키코드보다 범위가 넓다.
- 3
: 원래 입력스트림은은 인풋스트림. 문자는 리더
- o
- BufferedReder/Writer
- 2
: ~를 이용하는 scanner 객체는 생성할 수 있지만, 직접 생성은 x
- 1
: String은 java.lang 클래스에 있다.
- 1
: 괄호() 안에는 명확하게 파일을 읽을 수 있도록 확장자명을 적어야 한다. 아니면 단순 문자열 취급. ex)output.txt
: 1번은 키보드 입력을 읽음
- 3
: 인풋스트림은 바이트스트림이므로 항상 바이트를 반환한다.
- system
: 경로를 적고, 자바 파일 내의 파일명을 읽어오라는 명령.
- 3
: 문자 나오면 리더/라이터
- 3
: 입출력 장치는 입출력되기 전까지 잠시 기다려야한다. > 버퍼와 연관이 있다.
- 3
: 추상클래스 > 상속 필요 > 자식이 있다. > 범위가 큰 보기가 답
- System.in
: 키보드로 입력 or 모니터 출력은 시스템.인/아웃
- o
: 클래스 객체 생성. 클래스만 잘 만들어놓으면 파일 생성 된다.