Kannst Du einmal genauer sagen, was Du machst? Generell ist es so, dass Instanzen, die Du bei der Ausführung eines Programmes erzeugst, nur im Hauptspeicher existieren. Nach der Beendigung des Programmes sind die Daten weg.
Wenn Du irgendwelche Daten dauerhaft vorhalten willst, dann musst Du diese irgendwo ablegen, wo diese dauerhaft gespeichert werden, z.B. die Festplatte.
Das geht direkt z.B. mit ObjectOutputStream (und das Einlesen mittels ObjectInputStream). Diese Variante hat aber Probleme, wenn sich die Klasse ändert, dessen Instanz du gespeichert hast.
Ablauf muss hier also sein:
- Nach Eingabe der Daten werden diese in eine Datei geschrieben.
- Beim Öffnen des Programmes schaut dieses erst, ob eine Datei mit Daten existiert und lädt diese dann ggf. ein.
Statt der Variante, Instanzen direkt zu speichern gibt es auch Wege, dies in speziellen Formaten zu machen. Hier gibt es z.B. XML und JSON und es gibt dann auch Libraries, die das lesen und Schreiben ebenso einfach gestalten (z.B. Jackson, gson, ...)
Und dann gibt es natürlich auch Lösungen um nur die Daten lesen zu müssen, die man braucht, dh. alle Daten liegen in einer Datenbank und man greift über spezielle Methoden darauf zu. Dies kann dann "native" erfolgen (JDBC wäre hier das Stichwort) oder über entsprechende Libraries wie z.B. Hibernate.
Das als eine einfache kurze Übersicht.