직렬화 객체의 데이터는 물론 객체의 유형 및 객체에 저장된 데이터 유형에 대한 정보를 포함하는 바이트 시퀀스 형태로 Java 객체를 유지하는 프로세스입니다. 직렬화 Java 개체의 값/상태 변환입니다. 바이트로 네트워크를 통해 전송 또는 저장합니다. 반면에 역직렬화 바이트 코드의 변환입니다. 해당 자바 객체에.
일시적 변수는 값이 직렬화 중에 직렬화되지 않는 변수입니다. 프로세스. 기본값을 얻습니다. 역직렬화할 때 이 변수에 대해.
구문
private transient <member-variable>;
예시
import java.io.*; class EmpInfo implements Serializable { String name; private transient int age; String occupation; public EmpInfo(String name, int age, String occupation) { this.name = name; this.age = age; this.occupation = occupation; } public String toString() { StringBuffer sb = new StringBuffer(); sb.app*end("Name:"+"\n"); sb.append(this.name+"\n"); sb.append("Age:"+ "\n"); sb.append(this.age + "\n"); sb.append("Occupation:" + "\n"); sb.append(this.occupation); return sb.toString(); } } // main class public class TransientVarTest { public static void main(String args[]) throws Exception { EmpInfo empInfo = new EmpInfo("Adithya", 30, "Java Developer"); ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("empInfo")); oos.writeObject(empInfo); oos.close(); ObjectInputStream ois = new ObjectInputStream(new FileInputStream("empInfo")); EmpInfo empInfo1 = (EmpInfo)ois.readObject(); System.out.println(empInfo1); } }
출력
Name: Adithya Age: 0 Occupation: Java Developer