пролазна је модификатор променљивих који се користи у серијализација . У време серијализације, ако не желимо да сачувамо вредност одређене променљиве у датотеци онда користимо пролазан кључна реч. Када ЈВМ наиђе пролазан кључна реч игнорише оригиналну вредност променљиве и чува подразумевану вредност тог типа података променљиве. пролазан кључна реч игра важну улогу у испуњавању безбедносних ограничења. Постоје разни примери из стварног живота где не желимо да чувамо приватне податке у фајлу. Друга употреба пролазна кључна реч није да се серијализује променљива чија се вредност може израчунати/извести коришћењем других серијализованих објеката или система, као што је старост особе, тренутни датум итд. Практично смо серијализовали само она поља која представљају стање инстанце након што се сва серијализација спрема да сачува стање објекта у датотеци. Добра је навика за коришћење пролазна keyword with private confidential fields of a class during serialization. Java // A sample class that uses transient keyword to // skip their serialization. class Test implements Serializable { // Making password transient for security private transient String password; // Making age transient as age is auto- // computable from DOB and current date. transient int age; // serialize other fields private String username email; Date dob; // other code } пролазни и статични: Пошто статична поља нису део стања објекта нема употребе/утицаја коришћења пролазна кључна реч са статичким променљивим. Међутим, нема грешке у компилацији. пролазно и коначно: коначне променљиве су директно серијализоване својим вредностима тако да нема користи/утицаја декларисања коначне променљиве као пролазан . There is no compile-time error though. Java // Java program to demonstrate transient keyword // Filename Test.java import java.io.*; class Test implements Serializable { // Normal variables int i = 10 j = 20; // Transient variables transient int k = 30; // Use of transient has no impact here transient static int l = 40; transient final int m = 50; public static void main(String[] args) throws Exception { Test input = new Test(); // serialization FileOutputStream fos = new FileOutputStream('abc.txt'); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeObject(input); // de-serialization FileInputStream fis = new FileInputStream('abc.txt'); ObjectInputStream ois = new ObjectInputStream(fis); Test output = (Test)ois.readObject(); System.out.println('i = ' + output.i); System.out.println('j = ' + output.j); System.out.println('k = ' + output.k); System.out.println('l = ' + output.l); System.out.println('m = ' + output.m); } } Output : i = 10 j = 20 k = 0 l = 40 m = 50