参考资料上这么说:
如果用transient声明一个实例变量,当对象存储时,它的值不需要维持。例如:
class T {   
   transient int a;  //不需要维持   
   int b;  //需要维持   
}  这里,如果T类的一个对象写入一个持久的存储区域,a的内容不被保存,但b的将被保存。问题:什么叫持久的存储区域?能分析一下吗,具体用在哪里?

解决方案 »

  1.   

    是指被声明“序列化”的时候不被存储的。比如
    public class A implements java.io.Serializable {    private String normalString;
        private transient String transientString;    ..........}那么,如果把它
                A a = new A(......);
                ObjectOutputStream o = new ObjectOutputStream(new FileOutputStream("file1"));
               o.writeObject(a);
    那么这样的时候,写到本地的文件file1里面是没有保存transientString的值。但是却保存了normalString的值
      

  2.   

    持久的存储区域:在成员变量前没transient的一般是。
    一般应用在瞬态变化中,如读,写的中间过程。