import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.Date; public class TransientClass implements Serializable { private static String datnam = "myObjs.ser"; private transient Date transDate = new Date(); private Date date = new Date(); private static final long serialVersionUID = -1676776445270664023L; public static void main(String[] args) { if (new File(datnam).exists()) { try (ObjectInputStream in = new ObjectInputStream( new FileInputStream(datnam))) { TransientClass tc = (TransientClass) in.readObject(); System.out.println("deserialized date: " + tc.date); System.out.println("deserialized transDate: " + tc.transDate); // null } catch (IOException | ClassNotFoundException e) { e.printStackTrace(); } } else { System.out.println("'" + datnam + "' created"); } try (ObjectOutputStream aus = new ObjectOutputStream( new FileOutputStream(datnam))) { aus.writeObject(new TransientClass()); System.out.println("class serialized to '" + datnam + "'."); } catch (IOException ex) { System.out.println("couldn't write to file '" + datnam + "'."); } } }