Serializableの実装の必要性

会社で、どうゆう場合にSerializableを実装しなければならないのか聞かれました。こんな感じで答えたんですが、100%自信が持てている訳ではなかったりします。

回答

Serializableを実装すると、そのクラスのインスタンスがbyte配列に変換可能になる。

インスタンスがbyte配列に変換できるということは、インスタンスをそのままファイルに保存したり、インスタンスをそのままネットワーク越しの別サーバに転送したりできるようになる。

例えばtomcatなら、sessionスコープに格納されたインスタンスをファイルに保存するかもしれないし、クラスタリングしているサーバと共有するためインスタンスをネットワーク越しに転送するかもしれない。

インスタンスの管理をframeworkなどに任せる場合(sessionスコープにインスタンスを格納するような場合)、そのクラスはSerializableを実装すべき。

Leave a Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.