반응형

 

 아니다. '정적'이라는 것은 '객체마다 하나씩'이 아닌 '클래스마다 하나씩'을 의미한다. 정적변수는 저장되지 않고 객체를 역직렬화할 때 현재 정적 변수에 들어있는 값을 받게 된다. 따라서 직렬화할 때 현재 정적 변수에 들어있는 값을 받게 된다. 따라서 직렬화할 수 있는 객체를 만들 때는 동적으로 바뀔 수 있는 정적 변수에 의존하지 않게 만들어야 한다. 왜냐하면 객체를 복구했을 때 원래 값과 다른 값을 가지게 되면 안되므로......

 

 직렬화할 때 어떤 객체를 건너뛰고 싶다면 transient 키워드를 사용하면 된다. 그 변수는 복구될 때 널(객체 레퍼런스인 경우) 또는 기본값(원시 변수인 경우)을 할당 받게 된다.

 

참조) Head First Java p.458

반응형

'개발 및 관리 > Java' 카테고리의 다른 글

Iterator, QuizCardBuilder.java , QuizCardReader.java  (0) 2013.01.25
FileWriter  (0) 2013.01.25
Head First Java p.441  (0) 2013.01.25
ArrayList VS 일반배열  (0) 2013.01.25
BeatBox.java  (0) 2013.01.24