3. Bridge Stream (연결 스트림)
  (1) 설명 : 1byte -> 2byte

  (2) 종류
 <1> InputStreamReader
 <2> OutputStreamWriter

 (ex: 002day/IO17.java)

4. Filter Stream (응용 스트림)
  (1) 설명 : Node Stream과 연걸해서 다양한 기능(메소드/속성)을 쓸 수 있는 Stream!!
    즉, 기능을 향상시킨 스트림..

  (2) 종류
 <1> (내부적으로) 버퍼기능을 강화시킨 1 byte Stream
   [1] BufferedInputStream
   [2] BufferedOutputStream
   (ex: 002day/IO18.java)

 <2> 기본형을 읽고 쓸 수 있는 Stream
   [1] DataInputStream
   [2] DataOutputStream
   (ex: 002day/IO19.java)

 <3> 객체를 읽고 쓸 수 있는 Stream
   [1] ObjectInputStream
   [2] ObjectOutputStream
   (ex: 002day/IO20~21.java)

   cf) 주의
   (ex: 002day/IO20~21.java, Student.java)


   1> 객체 직렬화 가능한 Object(Serializable 를 구현한 클래스 객체) 만을 읽고 쓸 수 있다.
   2> 객체에 포함된 속성과 속성값만 전송된다.
   3> 메소드와 static 멤버변수는 전송되지 않는다. (통신하는 양쪽모두 클래스를 공유하기때문이다.)
   4> 속성 앞에 transient 가 붙으면 해당 속성은 직렬화가 불가
   5> 속성 Type도 Serializable 을 상속 받은 속성만 직렬화가 됨
   6> Serializable 와 추상메소드와 상수가 전혀없는 인터페이스를 Mark Interface 라 한다.
   7> 객체 직렬화시 용어
  - 마셜링 : 객체를 바이트(byte) 단위로 쪼개는것...
  - 언마셜링 : 바이트단위 객체를 원래대로 조립하는것...

 <4> 메모리에 읽고 쓸 수 있는 스트림
   [1] byte 배열을 읽고 쓸 수 있는 스트림
  - ByteArrayInputStream
  - ByteArrayOutputStream
  (ex: 002day/IO22~23.java)

   [2] char 배열을 읽고 쓸 수 있는 스트림
  - CharArrayReader
  - CharArrayWriter

 <5> 문자를 powerful하게 읽고 쓸 수 있는 스트림
   [1] BufferedReader
   [2] PrintWriter (다양한 메소드, 오토 플러쉬, 브릿지 필요없다.)
   (ex: 002day/IO24~25.java)


Posted by Duritz

공지사항

Yesterday
Today
Total
05-18 14:19

달력

 « |  » 2024.5
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31