반응형
자바, Serializable & Externalizable |
Serializable 은 implement 를 해주면 자동으로 object 안에 있는 모든 변수들이 serializable 하게 된다. 물론 primitive type 에 대해서이다. Serializable 을 구현한 클래스에서 다른 object 를 담고 있다면 해당 object 도 serializable 해야 정상적으로 serializable 하게 된다. 만약 변수 중에 serializable 하게 만들고 싶지 않은 것들이 있다면 transient 이라는 키워드를 앞에 붙여주어야 한다.
Externalizable 인터페이스는 Serializable 인터페이스의 자식 클래스이다.
Serializable 은 object 의 모든 변수들을 자동으로 serializable 하게 만들지만
Externalizable 은 readExternal( ObjectInput in ) 과 writeExternal( ObjectOutput out ) 을 구현해주며
이 안에서 read, write 하는 변수들만 serializable 하게 된다.
readExternal 에서는 기본적으로 기본 생성자를 이용하기 떄문에 기본 생성자를 생성해주어야 한다.
이것들이 제대로 구현되어 있어야 ObjectInputStream 과 ObjectOutputStream 을 통해 직렬화, 역직렬화를 제대로 수행할 수가 있다.
반응형
'프로그래밍 놀이터 > 안드로이드, Java' 카테고리의 다른 글
[android] Multiple APK Support (0) | 2013.09.15 |
---|---|
[Java] static import 이야기. (0) | 2013.09.15 |
[android] Nexus7 에서 잘 작동하는 앱 만들기. (0) | 2013.09.09 |
[android] AlertDialog Ok, Cancel button dismiss 방지 코드 (2) | 2013.09.07 |
[Java] String Tokenizer 예제 코드 (0) | 2013.09.07 |
댓글