-
입력과 출력을 다루는 추상 클래스 (장식대상 클래스)
- inputStram
- OutputStream
- Reader
- Write
-
Byte, Char 기반
- Byte = inputStram + OutputStream
- Char = Reader + Writer
-
IO
- IO = Byte + Char
-
장식 대상, 장식 하는 클래스
- 장식대상 클래스
- 파일로 부터 입력받고 쓰기 위한 클래스 : FileInputStream, FileOutputStream, FileReader, FileWriter
- 배열로 부터 입력받고 쓰기 위한 클래스 : ByteArrayInputStream, ByteArrayOutputStream, CharReader, CharWriter
b. 장식하는 클래스
- DataInputStream, DataOutputStream
- PrintWriter
- BufferedReader
데코레이터 패턴 : 생성자에서 감싸서 새로운 기능을 계속 추가 할 수 있도록 클래스를 만드는 방식