Java-transient使用代码示例总结

黄舟
黄舟 原创
2017-03-15 11:49:22 1178浏览

纸上得来终觉浅,绝知此事要躬行 --陆游 问渠那得清如许,为有源头活水来 --朱熹


transient有“临时的”,"短暂的"含义,我们了解过Serializable,Java序列化,当对某些变量我们不想对它进行序列化的时候就可以将此变量设置为transient,transient是Java语言的关键字,用来表示一个域不是该对象串行化的一部分。transient说明一个属性是临时的,不会被序列化。

public class TransientDemo implements Serializable{
/**
     *
     */
private static final long serialVersionUID = 1L;
    private  transient String name;
    private String password;

    public String getName() {
        return name;
    }

    public void setName(String name) {
    this.name = name;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

public static void main(String[] args) throws FileNotFoundException, IOException, ClassNotFoundException {
// TODO Auto-generated method stub  
    String path="D:"+File.separator+"object.txt";
    File file=new File(path);
    TransientDemo transientDemo=new TransientDemo();
    transientDemo.setName("姓名");
    transientDemo.setPassword("密码");
    ObjectOutput output=new ObjectOutputStream(new FileOutputStream(file));
    output.writeObject(transientDemo);
    ObjectInput input=new ObjectInputStream(new FileInputStream(file));
    TransientDemo demo=(    TransientDemo )input.readObject();
    System.out.println(demo.getName()+demo.getPassword());
    }

}

结果密码输出为

null

以上就是Java-transient使用代码示例总结的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。