Πίνακας περιεχομένων:

Γιατί προσθέτουμε το serialVersionUID;
Γιατί προσθέτουμε το serialVersionUID;

Βίντεο: Γιατί προσθέτουμε το serialVersionUID;

Βίντεο: Γιατί προσθέτουμε το serialVersionUID;
Βίντεο: Γιατί δεν έχουμε χαρά; - π. Λίβυος 2024, Νοέμβριος
Anonim

Γιατί έτσι χρησιμοποιούμε SerialVersionUID : Το SerialVersionUID είναι χρησιμοποιείται για να διασφαλιστεί ότι κατά την αποσειριοποίηση η ίδια κλάση (που χρησιμοποιήθηκε κατά τη διαδικασία σειριοποίησης) είναι φορτωμένος. Serialization: Κατά τη στιγμή της σειριοποίησης, με κάθε πλευρά του αποστολέα αντικειμένου JVM θα αποθηκεύστε ένα μοναδικό αναγνωριστικό.

Επιπλέον, γιατί χρησιμοποιούμε το serialVersionUID;

Με απλά λόγια, το serialVersionUID είναι ένα μοναδικό αναγνωριστικό για Serializable κλάσεις. Αυτό είναι μεταχειρισμένος κατά τη διάρκεια της αποσειριοποίησης ενός αντικειμένου, για να διασφαλιστεί ότι μια κλάση που έχει φορτωθεί είναι συμβατή με το σειριακό αντικείμενο. Εάν δεν βρεθεί αντίστοιχη κλάση, εμφανίζεται ένα InvalidClassException.

Εκτός από τα παραπάνω, χρειάζεται το serialVersionUID; η προεπιλεγμένη serialVersionUID Ο υπολογισμός είναι πολύ ευαίσθητος σε λεπτομέρειες κλάσης που μπορεί να διαφέρουν ανάλογα με τις υλοποιήσεις του μεταγλωττιστή και μπορώ καταλήγει έτσι σε απροσδόκητα InvalidClassException κατά τη διάρκεια της αποσειριοποίησης. Επομένως, πρέπει να δηλώσετε serialVersionUID γιατί μας δίνει περισσότερο έλεγχο.

Εκτός από αυτό, ποια είναι η χρήση του serialVersionUID 1l;

ο serialVersionUID είναι ένα καθολικό αναγνωριστικό έκδοσης για μια κλάση Serializable. Deserialization χρήσεις αυτόν τον αριθμό για να διασφαλιστεί ότι μια φορτωμένη κλάση αντιστοιχεί ακριβώς σε ένα σειριακό αντικείμενο. Εάν δεν βρεθεί αντιστοίχιση, τότε εμφανίζεται ένα InvalidClassException.

Τι σημαίνει serialVersionUID;

Java: Πώς να δημιουργήσετε serialVersionUID

  1. εντολή σειριακού διακομιστή. Το JDK έχει μια εντολή build in που ονομάζεται " serialver " για να δημιουργεί αυτόματα το serialVersionUID.
  2. Χρησιμοποιήστε το Eclispe IDE. Εάν χρησιμοποιείτε το Eclipse, μετακινήστε το ποντίκι σας πάνω από την τάξη σειριοποίησης.
  3. Οτιδήποτε θες. Απλώς καθορίστε το δικό σας serialVersionUID, δώστε έναν αριθμό και προσθέστε ένα "L" πίσω.

Συνιστάται: