[JAVA] Unserialize, en dan constructor, toch?!

Pagina: 1
Acties:

  • Blubber
  • Registratie: Mei 2000
  • Niet online
Ik dacht toch echt op de java.sun.com site gevonden te hebben dat als je met readObject een object uit een bestnad haalt, dat hij hem dan unserialized, en automagisch de constructor aanroept. Maar dat geberut hier niet. Hoe los ik dit op?

  • whoami
  • Registratie: December 2000
  • Laatst online: 06:24
[off-topic]
Veel typo's zulle, dat leest niet gemakkelijk.
[/off-topic]

Post eens wat code. Een constructor wordt naar m'n mening enkel en alleen automatisch opgeroepen bij het creeëren van een object.

https://fgheysels.github.io/


  • Blubber
  • Registratie: Mei 2000
  • Niet online
Oke, post eens wat code is niet zo makkelijk maar dit gebeurt er:
code:
1
WkGui wkGui = (WkGui)f.readObject();

Dat is wat er gebeurt, en die moet dan dus de constructor van class wkGui aanroepen, want deze creert namelijk de Gui.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
    public WkGui(String hetNaam) {
        System.out.print("Constructor");
        
        toernooiNaam = hetNaam;
        UseCase useCase = new UseCase("Pool-Systeem", this);
            useCase.addUseCase("Nieuwe gebruiker");
            useCase.addUseCase("Voorspellingen doen");
            useCase.addUseCase("Uitslagen invoeren");
            useCase.addUseCase("Overzicht pools");
            useCase.addUseCase("Overzicht wedstrijden");
            useCase.addUseCase("Overzicht behaalde punten");
            useCase.addUseCase("Overzicht voorspellingen voorrondes");
            useCase.addUseCase("Overzicht voorspellingen overige rondes");
            useCase.addUseCase("Opslaan");
        useCase.show();
    }

Niet op die hetNaam spelfout letten, das een geintje :)

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

waar staat op de sub site dat bij unserializen de constructor wordt aangeroepen?

Het lijkt mij namelijk niet logisch, aangezien je je object met de variabelen opslaat, en in de constructor de waarde weer anders set. Hoe hij het object aanmaakt weet ik verder niet..

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Lees eens goed het verhaal in de API documentatie van ObjectInputStream door, dan wordt alles duidelijk:

http://java.sun.com/j2se/1.4/docs/api/java/io/ObjectInputStream.html

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment