ex)
//기반스트림 생성
FileInputStream fis = new FileInputStream("test.txt");
//기반스트림을 이용해 보조스트림 생성
BufferedInputStream bis = new BufferedInputStream(fis);
//보조스트림 BufferedInputStream으로부터 데이터를 읽음.
bis.read();
위 코드에서 BufferedInputStream은 버퍼만을 제공할 뿐이고, 실제 입력기능은 FileInputStream이 수행한다.
자바의 char타입이 2바이트를 차지하는 이유는 자바의 문자형이 유니코드를 이용하기 때문인데, 1바이트를 이용하는 아스키코드와 달리 유니코드는 2바이트를 이용하기 때문이다(=65536개).
이러한 문제를 보완하기 위해 문자기반의 스트림Reader, Writer
을 사용하는 것이다.
참고