title: When should we implement Serializable interface?
body: <pre><code>public class Contact implements Serializable {
      private String name;
      private String email;
  
      public String getName() {
          return name;
      }
  
      public void setName(String name) {
          this.name = name;
      }
  
      public String getEmail() {
          return email;
      }
  
      public void setEmail(String email) {
          this.email = email;
      }
  }
  </code></pre>
  
  <ol>
  <li>When should I implement <code>Serializable</code> interface?  </li>
  <li>Why do we do that?</li>
  <li>Does it give any advantages or security?</li>
  </ol>