Java의 transient 키워드 소개

transient는 하나의 속성이 임시적이며 서열화되지 않는다는 것을 설명한다.
다음은 데모입니다.name은transient로 서열화되지 않습니다

package com.zzs.tet;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInput;
import java.io.ObjectInputStream;
import java.io.ObjectOutput;
import java.io.ObjectOutputStream;
import java.io.Serializable;

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;
	}

	/**
	 * @param args
	 * @throws IOException 
	 * @throws FileNotFoundException 
	 * @throws ClassNotFoundException 
	 */
	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 암호

좋은 웹페이지 즐겨찾기