关键词“瞬态”在Java中意味着什么?

时间:2011-03-09 12:13:36

标签: java transient

我在某处看到了


transient private TrackDAO trackDAO;

3 个答案:

答案 0 :(得分:253)

Google是您的朋友 - first hit - 您也可以先查看serialization是什么。

  

它标记了一个成员变量   在持久化时序列化   字节流。当一个物体是   通过网络转移,   对象需要“序列化”。   序列化转换对象   状态到串行字节。这些字节是   通过网络和对象发送   从这些字节重新创建。会员   由java transient标记的变量   关键字不会被转移,它们是   故意丢失。

来自那里的示例,略有修改(感谢@pgras):

public class Foo implements Serializable
 {
   private String saveMe;
   private transient String dontSaveMe;
   private transient String password;
   //...
 }

答案 1 :(得分:30)

Java中的瞬态变量从不被序列化。

答案 2 :(得分:10)

这意味着trackDAO不应该被序列化。