java修饰符:transient关键字

来源:互联网 发布:达芬奇密码 知乎 编辑:程序博客网 时间:2024/04/30 11:44

transient关键字 
  首先是JAVA的序列化,简单来说就是将某一个类存储以文件形式存储在物理空间,下次再从本地还原的时候,还可以将它转换回来,这种形式便利了网络上的一些操作。 

  序列化只能保存对象的非静态成员交量,不能保存任何的成员方法和静态的成员变量,而且串行化保存的只是变量的值,对于变量的任何修饰符都不能保存。 

  以文件形式描述某些信息时,容易涉及到安全问题,因为数据位于Java运行环境之外,不在Java安全机制的控制之中。对于这些需要保密的字段,不应保存在永久介质中,或者不应简单地不加处理地保存下来 ,为了保证安全性。应该在这些字段前加上transient关键字。它的意思是临时的,即不会随类一起序列化到本地,所以当还原后,这个关键字定义的变量也就不再存在。 

如果TransTest 类的一个对象被序列化,i的内容不被保存,但j的将被保存。 
Java代码

   package com.test; classTransTest {

      transient int i;  //不需要保存    

      intj;           //需要保存     

    

0 0