Swing The serializable class FMFrame does not declare a static final serialVersionUID field of type long

JavaIsTheBest

Bekanntes Mitglied
Hallo,
warum bekomme ich diese Warnung?
"The serializable class FMFrame does not declare a static final serialVersionUID field of type long"
Mein Code dazu:

Java:
package GUI;
import javax.swing.*;

public class FMFrame extends JFrame{
   
    public FMFrame(){
        this.setTitle("Meine GUI");
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setSize(500, 500);
        this.setLocationRelativeTo(null); // Fenster ist in der Mitte des Desktops.
    }

}
 
Wenn man ein Objekt per Serialisierung abspeichert, wird eine ID mitgespeichert. Wenn das Objekt später deserialisiert wird, wird verglichen, ob die ursprüngliche ID noch mit der aktuellen übereinstimmt. Falls nicht, wird eine Exception geworfen.
Dadurch hat man die Möglichkeit, eine neue ID zu vergeben, falls man Änderungen vornimmt, die dazu führen, dass früher serialisierte Objekte nicht mehr kompatibel zum neuen Programmstand sind.

Solange man keine Serialisierung verwendet, kann man es eigentlich ignorieren. Allerdings sollte man trotzdem entweder explizit eine ID vergeben oder per Annotation die Warnung unterdrücken, denn grundsätzlich sollte man darauf achten, überhaupt keine Compiler-Warnungen zu bekommen. Sonst übersieht man neue Warnungen zu leicht.
 

Zurück
Oben