java transient关键字作用,使用场景。

原创 2016年08月31日 15:31:10

transient的作用及使用方法,官方解释为:

Variables may be marked transient to indicate that they are not part of the persistent state of an object.


我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个类的所有属性和方法都会自动序列化。

然而在实际开发过程中,我们常常会遇到这样的问题,这个类的有些属性需要序列化,而其他属性不需要被序列化,打个比方,如果一个用户有一些敏感信息(如密码,银行卡号等),为了安全起见,不希望在网络操作(主要涉及到序列化操作,本地序列化缓存也适用)中被传输,这些信息对应的变量就可以加上transient关键字。换句话说,这个字段的生命周期仅存于调用者的内存中而不会写到磁盘里持久化。

总之,java 的transient关键字为我们提供了便利,你只需要实现Serilizable接口,将不需要序列化的属性前添加关键字transient,序列化对象的时候,这个属性就不会序列化到指定的目的地中。

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

简述serializable和transient关键字作用

一、序列化使用场景 对象的序列化:目的:将一个具体的对象进行持久化,写入到硬盘上。(注意:静态数据不能被序列化,因为静态数据不在堆内存中,而是在静态方法区中) Serializable:用于启动对象...

关于hibernate中@Transient注解使用的一点心得

转(例): @Transient表示该属性并非一个到数据库表的字段的映射,ORM框架将忽略该属性.  如果一个属性并非数据库表的字段映射,就务必将其标示为@Transient,否则,ORM框架默认其注...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

Hibernate @Transient : 标识不和数据库字段进行映射的临时属性

一、问题的引出:

Java-transient总结

transient有“临时的”,"短暂的"含义,我们了解过Serializable,Java序列化,当对某些变量我们不想对它进行序列化的时候就可以将此变量设置为transient,transient是...

JavaSE入门学习1:计算机基础知识

一计算机概述       计算机(Computer)全称:电子计算机,俗称电脑。是一种能够按照程序运行,自动、高速处理海量数据的现代化 智能电子设备。由硬件和软件所组成,没有安装任何软件的计算机称为...

JavaSE入门学习13:Java面向对象之封装

一封装概述        (1)封装的概念        将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过类提供的方法来实现对隐藏信息的操作问。 在面向对象程式设计方法中,封装是指,一种将...

JavaSE入门学习12: Java面相对象之static用法

我们可以基于一个类创建多个该类的对象,每个对象都拥有自己的成员,互相独立。然而在某些时候,我们更希 望该类所有的对象共享同一个成员。此时就是static大显身手的时候了。        Java中...

JavaSE入门学习11:Java面向对象之类和对象

一类和对象的概念        对象:对象,万物皆对象,客观存在的事物皆为对象。对象是类的一个实例,有状态和行为。例如,一条狗是一 个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。  ...

Java中的transient关键字

关键字介绍 一个对象只要实现了Serilizable接口,这个对象就可以被序列化,java的这种序列化模式为开发者提供了很多便利,可以不必关系具体序列化的过程,只要这个类实现了Serilizable接...

盛大资深软件工程师谈Android开发经验

从G1上市到现在,市面上已经出现了至少30款Android手机。为什么至今依然有一些用户在抱怨Android不好用,在相关的开发中,什么才是真正值得关注的,开发的核心是什么?为什么移动应用需要格外关注...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)