본문 바로가기
Android 개발/Android

Android 에서 Activity로 Object넘겨줄 때엔 Serializable

by Developer88 2016. 12. 26.
반응형

Activity로 데이터를 넘기고 싶을 때,

Intent로 PutExtra()메소드를 사용하여 데이터를 넘기는데요.

넘길 데이터가, 스트링 한두개가 아닌 경우도 있습니다.

예를 들면, 데이터 클래스가 다음과 같은 경우죠.



물론, 이런 데이터들 서버에서 받아서, 

만능 ArrayList로 만들어서 넘길수도 있고, HashMap같은 게 필요할 때는 그것을 사용할 수도 있겠죠.


하지만, 당연하게도, Object를 넘길 수도 있습니다. 

이 때, 데이터 클래스에서 implement하면 되는 것이 바로 Serializable입니다.


1. Serializable 적용


적용은 어떻게 할까요?

네, implements Serializable 요거면 됩니다.


우리말로 직렬화 인데요.

자바객체를 전송할 때, 다시 복원할 수 있는 Stream으로 변형시켜주는 것입니다.

재밌는 것은 인터페이스인데, 사용자인 저희가 구현해야할 메소드가 없습니다.

VM에게만 알려주면, 된다는 개념이에요.




2. Activity간 데이터 전송


액티비티간에 Student객체를 만들어서 전송해 보겠습니다.

Serializable을 implements했으므로, 

putExtra()메소드로 넘겨주기만 하면 됩니다.




3. Activity간 데이터 전송



이제 NewActivity에서 새로운 데이터를 받아와 보겠습니다.

getSerialzableExtra를 사용하면 쉽게 가져올 수 있습니다.



여기까지, 매우 쉽고 유용한 Serialzable에 대해서 정리해 보았습니다~.

728x90

댓글