Grande Rodrigo!
Não fiz os testes por aqui, mas acredito que o dado value em A conterá o
valor do último objeto a ser deserializado. Acredito que o comportamento
seja o mesmo de criarmos dois objetos da classe A, simultaneamente, já
que é isso que ocorre por baixo dos panos na serializacao.
Na prática, o uso de variáveis statics não é muito recomendado/usado,
sendo muito útil para métodos que não manipulam atributos internos de
uma classe.
Apenas para esclarecer aos que possam estar sem compreender nossa
discussão:
Um atributo static pertence a classe e não ao objeto.
Veja o exemplo abaixo:
class Pessoa
{
static String nome;
int idade;
public String getNome()
{
return nome;
}
}
public class exemplo
{
public static void main(String a[])
{
Pessoa pes1 = new Pessoa();
Pessoa pes2 = new Pessoa();
pes1.nome="Joao da Silva";
pes2.nome="Maria";
System.out.println("Pessoa 1: " + pes1.getNome());
}
}
C:\>java exemplo
Pessoa 1: Maria
Como é possível observar, o valor impresso foi o último a ser
instanciado, já que só existe uma referência para o atributo Nome na
classe pessoa.
[]'s e espero ter ajudado!
Handerson
Rodrigo B Mazzilli wrote:
>
> Olá pessoal
>
> Uma dúvida me ocorreu com respeito a serialização de objetos. Por que
> Java permite que objetos que possuem campos estáticos sejam serializados
> ?
> Eu tenho, por exemplo, uma classe A com um campo estático [static int
> value].
> Bem, instancio então um objeto da classe A onde [value=2], e serializo
> esse objeto.
> Modifico então (através de um método tipo setValue(int)) o campo value
> da classe A, passando pra 4 [value = 4] e novamente serializo esse outro
> objeto.
> Bem, tenho agora 2 objetos que são instancias da classe A. Se eu
> deserializar os dois objetos, qual estado estará minha classe A ?? O
> campo estático terá que valor ?
> Campo static não é considerado transient pelo que vi, até pq seria um
> absurdo...
>
> Rodrigo
>
> --
> _____________________________________________________________________
> Rodrigo B Mazzilli (Mr.) <[EMAIL PROTECTED]>
> ICQ# 4106069
> _____________________________________________________________________
> To get my PGP public key, reply this message
> with "get public-key" in the subject field.
> ---------------------------------------------------------------------
> "Computers can never replace human stupidity."
>
> --------------------------- LISTA SOUJAVA ---------------------------
> http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
> [dúvidas mais comuns: http://www.soujava.org.br/faq.htm]
> [para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
> ---------------------------------------------------------------------
--------------------------- LISTA SOUJAVA ---------------------------
http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP
[dúvidas mais comuns: http://www.soujava.org.br/faq.htm]
[para sair da lista: http://www.soujava.org.br/forum/cadastrados.htm]
---------------------------------------------------------------------