If you do not want to use transient (why not?), You can implement Externalizable and implement your own protocol:
public class Spaceship implements Externalizable { public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException {
If it's too extreme, maybe you just want to tweak the serialization a bit? Continue to implement Serializable and implement your own writeObject and readObject .
Here are some examples: http://java.sun.com/developer/technicalArticles/Programming/serialization/
source share