Hai usato la "serializzazione"? Beh, sì, JTree tecnicamente è serializzabile e si può fare ammesso che gli oggetti nei node siano anch'essi serializzabili.
La questione semmai è che non sarebbe proprio una buona cosa, anche perché serializzando un intero componente grafico viene serializzata una "marea" di roba.
Normalmente si crea la GUI istanziando i vari componenti es. new JTree() e aggiungendoli ciascuno dentro un contenitore. Il punto è che se avevi serializzato un JTree, quando ricrei la GUI non devi più fare ovviamente new JTree() ma prendere quello deserializzato.
Il problema è che un conto è farlo mentre crei la GUI ... un altro conto è farlo dopo, a seguito di un qualche evento. Bisogna anche considerare questioni di posizionamento/dimensionamento, layout manager se c'é e in tal caso come rivalidarlo dopo che intendi aggiungere il JTree.
Al limite, se proprio vuoi continuare con la serializzazione, al massimo serializza il TreeModel ... non il JTree (in qualunque momento, anche a seguito di un evento puoi fare tuoJtree.setModel(treeModelDeserializzato) senza alcun problema).
P.S. dimentica updateUI(), questo serve per cose interne al framework legate ai Look&Feel. Generalmente non è da usare esplicitamente.