Olá amigos, estou fazendo um simulado do ExamLabs e encontrei uma questão que perguntava:
É possível inserir um modificador transient em uma variável static?
Respondi que não, pois as variáveis estáticas não podem ser serializadas… Mas logo descobri que respondi errado… 
Rolou uma dúvida agora…
O modificador transient tem alguma outra utilidade?
Abs.
Paulo Gervásio.
Fala gervas-IO, beleza?
O conceito de serialização está preocupado com o estado atual do objeto. Apenas os dados associados com uma instância específica de uma classe são serializados. Portanto, variáves estáticas são ignoradas (automaticamente) pela JVM durante a serialização, porque elas não pertencem à instância serializada, mas sim a classe.
O compilador não impede que você declare uma variável utilizando a seguinte sintaxe:
transient static int qualquerNumero = 10;
Mas podemos dizer que é uma redundância.
Link interessante:
http://www.coderanch.com/t/252191/java-programmer-SCJP/certification/static-transient-variable
O livro da Kathy Sierra diz sobre o modificador static:
“As variáveis e métodos marcados com static pertencem a classe, em vez de a qualquer instância específica.”
Ficou meio embaraçoso? hehehe
Abraço.
Schwingel
Blz Schwingel!
Já imaginava isso, tenho visto coisas desse tipo no compilador nesses últimos dias, tipo:
- métodos private final
- construtores protect abstract
esse aqui tb é muito interessante:
http://www.guj.com.br/posts/list/209239.java
Valeu!
Abs!