OutputStream/InputStream/transient 叁歲伎倆 2022-06-06 03:18 178阅读 0赞 OutputStream用于把数据或对象写入到文件中; InputStream用于从文件中读取数据或对象。 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()); } } 结果name输出为null
还没有评论,来说两句吧...