Close Menu
Datormagazin
    Facebook
    Senaste testerna
    • Test: Huawei Watch 5 & Fit 4 Pro
    • Test: Huawei Watch GT 3 SE
    • Test: Beoplay EX
    • Test: Sony Xperia 1 III
    • Test: Cooler Master Masterair MA624 Stealth och MA612 Stealth ARGB
    DatormagazinDatormagazin
    • Hem
    • Nyheter
    • Tester
      1. Toppklass
      2. DMZ Rekommenderar
      3. Gaming
      4. Jämförande test
      5. View All

      Test: Huawei Watch 5 & Fit 4 Pro

      15 maj, 2025

      Motorola Razr 60 Ultra

      6 maj, 2025

      Test: Sennheiser HD 550

      7 april, 2025

      Test: G.Skill Trident Z5 CK F5-8200C4052G24GX2-TZ5CK 48 GB

      27 mars, 2025

      Test: Xiaomi POCO F7 Ultra

      6 juni, 2025

      Test: Kioxia Exceria Plus G4

      28 maj, 2025

      Test: AOC AGON PRO AG456UCZD

      21 maj, 2025

      Test: Asus ZenScreen Duo OLED MQ149CD

      18 maj, 2025

      Test: Kioxia Exceria Plus G4

      28 maj, 2025

      Test: AOC AGON PRO AG456UCZD

      21 maj, 2025

      Test: Cooler Master Masterliquid 360 ION & Hyper 612 APEX

      18 april, 2025

      Test: Sennheiser HD 550

      7 april, 2025

      Test: Logitech Ergo K860 vs. Microsoft Sculpt Ergonomic Keyboard

      19 augusti, 2021

      Vi utser den bästa multiskrivaren

      20 maj, 2021

      Test: Cooler Master Masterair MA624 Stealth och MA612 Stealth ARGB

      12 maj, 2021

      Test: Oneplus 9 Pro och Oneplus 9

      21 april, 2021

      Test: Xiaomi POCO F7 Ultra

      6 juni, 2025

      Teknologin som driver e-sportturneringar: Hur allt hänger ihop

      2 juni, 2025

      Test: Asus NUC 15 Pro+

      1 juni, 2025

      Krypteringens era: Tekniken bakom säkra digitala plattformar

      1 juni, 2025
    • DMZ-riggen
    • Programtips
    • Gaming
    • Fråga experten
      • Hårdvara
      • Mjukvara
    • DMZ Retro
    • Shop
    • Om DMZ
      • Om Datormagazin
      • Annonsera
      • Nyhetsbrevet
      • Kundtjänst
      • Press & PR
    Facebook
    Datormagazin
    Hem » Fråga experten » Default serial version ID
    Fråga experten

    Default serial version ID

    redaktionenBy redaktionen11 oktober, 20093 Mins Read

    Fråga

    Jag använder Eclipse. När jag programmerar klasser så får jag en varning på första raden:

    public class MyClass {
    ….
    }

    När jag klickar på ikonen (en liten gul triangel) så får jag:

    • Add default serial version ID
    • Add generated serial version ID
    • Rename in file
    • Change modifyer to final

    Jag undrar vad denna varning innebär och vad man gör att inte få den.

    Vänliga hälsningar, Lidiya

    Svar

    Hej Lidiya,

    Med serialisering menas att instanser av en klass skickas ut över en io-ström. På svenska innebär det att objekt av klassen exempelvis kan sparas till disk eller skickas över ett nätverk.

    Alla klasser som implementerar interfaces Serializable behöver även ett attribut som ser ut så här:

    private static final long serialVersionUID = 1234567890;

    Detta för att den som sedan läser upp objektet från exempelvis en disk ska kunna veta vilken version det är. Om det här attributet saknas så skapar Java en åt dig automatisk utan att du märker något.

    För att förklara syftet på ett förhoppningsvis enkelt sätt kan du föreställa dig följande situation:

    Du och din kompis har knackat ihop ett litet chatprogram där ni kan skicka text och bilder till varandra. Låt oss säga att klassen som innehåller datat ni skickar heter ChatMessage.

    Vad händer om din kompis hittar en bugg någonstans i programmet och fixar till det? Kompisen bygger om sin kopia av programmet och så testar ni prata med varandra igen. Oavsett om kompisen gjorde något med ChatMessage så kommer den ha fått ett nytt serienummer och när ni sedan pratar med varandra kommer era program protestera vilt även om just den klassen faktiskt är identisk.

    För att lösa det här problemet sätter ni dit ett serienummer och ändrar det bara när ni ändrar i den klassen. På så sätt kan ni bägge två sitta och ändra lite här och där utan att behöva göra exakt samma ändringar för att ni ska kunna prata med varandra. Fast det är klart, ändrar ni i just ChatMessage så är det ju en annan femma.

    I verkliga livet har det här stor betydelse för de flesta former av distribuerade system. Så länge man inte ändrar i det som syns för båda sidor kan man göra vad man vill på var sin sida staketet.

    För att bli av med varningen så kan du göra något av följande:

    1. Lägg till attributet serialVersionUID. Det är ju det den varnar för!

    2. Lägg till en annotation för att ignorera varningen just där.

    @SuppressWarnings(”serial”)
    public class MyClass …..

    3. För att bli av med alla sådana varningar oavsett vilken kod du jobbar med kan du gå in under eclipseinställningarna.

    Klicka på Window/Preferences i menyn. Gå in under Java->Compiler->Errors/Warnings Leta upp sektionen ’Potential programming problems’. Sätt ’Serializable class without serialVersionUID’ till Ignore.

    Jag rekommenderar nummer 1.

    java
    Share. Facebook Twitter LinkedIn Email WhatsApp

    Missa inte

    Fråga experten

    Konvertera till Windows 11

    8 november, 20211 Min Read
    linuxtips

    Minitips – Fånga ett fönster som rymt

    22 oktober, 20211 Min Read
    Fråga experten

    Hur får jag Wi-Fi genom betongvägg?

    26 augusti, 20212 Mins Read
    Fråga experten

    Hur kan jag slippa nätverkskabel till övervåningen?

    6 augusti, 20212 Mins Read
    Add A Comment

    Leave A Reply Cancel Reply

    Senaste kommentarerna
    • Andreas Rejbrand om Test: Samsung Galaxy watch 7
    • Petter om Test: Samsung Galaxy watch 7
    • Anders Öhman om Test: Samsung Galaxy watch 7
    • Tobias om Test: Samsung Galaxy watch 7
    • Anders om Test: HP Envy X360
    Fler nyheter

    Glorious Gamings Pro-möss lanseras i vit

    25 september, 2024

    Gen Z och kvinnor väljer mobilen framför sex

    25 september, 2024

    Många Svenska företag lever inte upp till sina visioner gällande hållbarhet.

    21 augusti, 2024

    Nya Philips 49B2U6903CH – en skärm för ”den moderna arbetsplatsen”

    28 juni, 2024

    Toppklass

    Test: Huawei Watch 5 & Fit 4 Pro

    15 maj, 2025

    Test: OnePlus 12

    23 februari, 2024

    Test: Philips Evnia 49M2C8900

    7 januari, 2024

    Test: Corsair Dominator Titanium DDR5

    28 september, 2023
      Kontaktinformation
      Kontaktinformation

      Omsoc Publishing AB
      Datormagazin
      Box 440 73
      100 73 Stockholm
      Sweden

      Telefonnummer: +46 8–208 118
      E-post: datormagazin@datormagazin.se

      Missa inte

      M.2 optimerad NAS-prestanda

      2 september, 2024

      WiFi 7 – När, var, hur & varför

      23 augusti, 2023

      TCS digitala tvillingar och deras prediktiva kraft.

      4 juli, 2023
      Datormagazin
      Facebook YouTube RSS
      • Om cookies
      • Hantering av personuppgifter
      • Köpvillkor www.datormagazin.se
      © 2025 Datormagazin/Omsoc Publishing AB, org-nr: 559034-9014 – Ansvarig utgivare: Anders Öhman

      Type above and press Enter to search. Press Esc to cancel.