title: What are the issues with non-static inner classes and serialization in Java
body: <p>This morning my boss and I had a long and ultimately fruitless discussion about this, in the context of trying to diagnose performance problems with a web application.  We didn't really come to any conclusions.</p>
  
  <p>I think we're right in thinking that Serializable non-static inner classes have issues, but we're not sure precisely what the issues are or what exactly to avoid (we reasoned that we couldn't <em>always</em> simply avoid it).  Can anyone suggest any guidelines for not getting in trouble with this issue?</p>