presentjava
272
2017-12-19 18:03:44 작성 2017-12-19 18:08:24 수정됨
4
959

객체 직렬화의 의미


안녕하세요 개발 선배님들

현재 운영업무를 하고 있는 개발 1년차 신입입니다.

일을 하다보니 운영 소스를 차근차근 보면서 업무를 파악하고 일을 하고 있습니다.

근데 운영 소스를 보다가 갑자기 궁금한게 생겼습니다.


public class 0000VO implements Serializable

이런게 있어서 궁금해서 구글링을 해봤는데요...

객체 직렬화란 말이 있더라고요

이게 정확하게 어떤 의미로 사용이 되는건지

배워보지 못한 것이 나와서 궁금하기도 하고요

0
0
  • 답변 4

  • LichKing
    14k
    2017-12-19 18:11:44

    객체를 jvm바깥 외부로 빼겠다는겁니다. Serialize 인터페이스는 마커인터페이스로 저걸 달아주는건 "얜 직렬화 할수있어" 라고 알려주는 역할이고요.

    간단하게 객체를 json 포맷으로 변환해서 txt 파일로 저장하는것도 직렬화라고 볼 수 있죠.


    2
  • 근원으로
    340
    2017-12-19 18:25:04

    객체의 값을 직렬로 쭉~~~ 나열해서 하나씩 하나씩 저장 하겠다는 거죠.

    예를들어 아래와 같은 클래스가 있다면,

    public class TEST  implements Serializable

    {

      int a;

      int b;

      int c;

    }

    "a(4바이트), b(4바이트), c(4바이트)" 와 같이 순차적으로 줄을 세워 저장한다는 거죠.

    그러면 반대로 로드 할 때도 순서대로 읽어서 객체를 복원할 수 있으니까요.

    1
  • JohnMark
    356
    2017-12-19 20:57:13

    외부 와 통신을 하기 위해 객체 정보를 직렬 형태로 정렬하는 것을 의미합니다.

    직렬 형태로 정렬하여 상대방에게 보내면, 상대방은 이를 순차적으로 읽으면 통신 이전의 객체를 다시 재조립 할 수 있으니까요



    0
  • presentjava
    272
    2017-12-20 10:30:04

    넵 감사합니다.

    참고하도록 하겠습니다.

    0
  • 로그인을 하시면 답변을 등록할 수 있습니다.