Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico
Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico
Forte della piattaforma Qualcomm Snapdragon X, il notebook Lenovo IdeaPad Slim 3 riesce a coniugare caratteristiche tecniche interessanti ad uno chassis robusto, con autonomia di funzionamento a batteria che va ben oltre la tipica giornata di lavoro. Un notebook dal costo accessibile pensato per l'utilizzo domestico o in ufficio, soprattutto con applicazioni native per architettura ARM
Recensione OnePlus Watch 3 43mm: lo smartwatch che mancava per i polsi più piccoli
Recensione OnePlus Watch 3 43mm: lo smartwatch che mancava per i polsi più piccoli
OnePlus risponde alle esigenze di chi cerca un dispositivo indossabile dalle dimensioni contenute con OnePlus Watch 3 43mm. La versione ridotta del flagship mantiene gran parte delle caratteristiche del modello maggiore, offrendo un'esperienza completa in un formato compatto. Il suo limite più grande è abbastanza ovvio: l'autonomia non è il punto di forza di questo modello, ma si raggiungono comodamente le due giornate piene con un uso normale.
BOOX Note Air4 C è uno spettacolo: il tablet E Ink con Android per lettura e scrittura
BOOX Note Air4 C è uno spettacolo: il tablet E Ink con Android per lettura e scrittura
BOOX Note Air4 C rappresenta l'ultima incarnazione della categoria dei tablet E Ink a colori di Onyx, e combina le prestazioni di un dispositivo Android con l'ottima tecnologia Kaleido 3 per il display. Con schermo da 10,3 pollici, un processore Qualcomm Snapdragon 750G e 6 GB di RAM, promette un'esperienza completa per lettura, scrittura e produttività. Il prezzo lo posiziona nel segmento premium, ma questo dispositivo è un vero spettacolo!
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-03-2010, 12:13   #1
Prorad
Member
 
Iscritto dal: Apr 2003
Messaggi: 179
[JAVA] deserializzare un oggetto, ma la classe è cambiata!

Salve a tutti,

Supponiamo che io abbia una classe
Codice:
class Foo {
Matrice m

//...metodi vari 

}
creo una istanza di questa classe e la serializzo.

Poi però cambio la definizione della classe in
Codice:
class Foo {
MatriceBoia mb

//...metodi vari 

}
se vado a deserializzare la vecchia istanza con la nuova definizione, il campo mb rimarrà settato a null e il vecchio valore di m andrà perduto.
Ora, siccome Matrice e MatriceBoia sono due classi di due package di matrici, io so come convertire l'una nell'altra. Il punto però è che non so come recuperare il campo m in fase di deserializzazione: c'è un modo per accedere ad un singolo campo in un oggetto deserializzato che ancora non è stato castato al suo tipo di appartenenza?
Altrimenti come altro posso fare?

ps: non posso ovviamente ricreare l'oggetto da zero, perchè per averlo mi ci sono voluti due giorni di elaborazione

thx in advance
__________________
"The problem with any unwritten law is that you don't know where to go to erase it."
Ho trattato positivamente con: quien sabe
Prorad è offline   Rispondi citando il messaggio o parte di esso
Old 19-03-2010, 13:27   #2
PGI-Bis
Senior Member
 
L'Avatar di PGI-Bis
 
Iscritto dal: Nov 2004
Città: Tra Verona e Mantova
Messaggi: 4553
Se hai ancora la classe Matrice, sì, se la classe Matrice non esiste più, no. No significa che puoi sempre ricostruire la classe ma devi andare a interpretare manualmente il flusso di dati serializzati (che ha un suo protocollo).

Nel primo caso, crei il metodo readObject in Foo, fai leggere all'ObjectInputStream i campi (readFields), pigli il campo "matrice", verifichi:

se è di tipo Matrice -> deserializzi manualmente convertendo Matrice in MatriceB

se è di tipo MatriceB -> esegui defaultReadObject.
__________________
Uilliam Scecspir ti fa un baffo? Gioffri Cioser era uno straccione? E allora blogga anche tu, in inglese come me!
PGI-Bis è offline   Rispondi citando il messaggio o parte di esso
Old 19-03-2010, 14:24   #3
Prorad
Member
 
Iscritto dal: Apr 2003
Messaggi: 179
Grazie per la risposta, decisiva
naturalmente si, la classe Matrice ce l'ho.

thx again
__________________
"The problem with any unwritten law is that you don't know where to go to erase it."
Ho trattato positivamente con: quien sabe
Prorad è offline   Rispondi citando il messaggio o parte di esso
Old 20-03-2010, 16:33   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Nel caso in cui il dato da deserializzare sia di tipo matrice, puoi usare la deserializzazione automatica di Matrice e poi ti fai un costruttore in Foo che prende come parametro Matrice e ti fai la conversione lì dentro.
cionci è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico Lenovo IdeaPad Slim 3: un notebook Snapdragon X ...
Recensione OnePlus Watch 3 43mm: lo smartwatch che mancava per i polsi più piccoli Recensione OnePlus Watch 3 43mm: lo smartwatch c...
BOOX Note Air4 C è uno spettacolo: il tablet E Ink con Android per lettura e scrittura BOOX Note Air4 C è uno spettacolo: il tab...
Recensione Sony Xperia 1 VII: lo smartphone per gli appassionati di fotografia Recensione Sony Xperia 1 VII: lo smartphone per ...
Attenti a Poco F7: può essere il best buy del 2025. Recensione Attenti a Poco F7: può essere il best buy...
Addio barriere linguistiche: NVIDIA offr...
Prezzo di 23.000 euro e 40.000 ordini in...
AliExpress lancia sconti folli con Klarn...
Formula 1, Toto Wolff è sicuro: &...
Galaxy S25 Edge e Ultra: super offerte A...
Bungie, cambio ai vertici e caos in Dest...
Auricolari Beats in super sconto su Amaz...
La Jeep Wagoneer S elettrica è gi...
Xiaomi SU7 e YU7, record di consegne e f...
Triplo sconto KTC: 190–280Hz e 2K curvo,...
Più che mini è un micro PC...
Grok 2.5 diventa open source: chiunque l...
Ring Intercom a metà prezzo, 49,9...
ASUS Vivobook in super sconto: 4 portati...
Rinnovabili anche per l'esercito: Fort P...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 12:45.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v