transient and Externalizable

I always thought transient members were not serializable i.e. couldn't be written out. But as the example below illustrates, if it's an Externalizable object, then transient members are also written out. import java.io.*; public class TransientWriter implements Externalizable {

By implementing Externalizable, you have complete control over the serialization process, that is, you can serialize whatever fields you want to. Transient fields are not serialized by the default serialization process (when implementing Serializable). For more detailed information, please consult Java tutorial: Implementing the Externalizable Interface