prolazna ključna riječ u Javi

prolazna je modifikator varijabli koji se koristi u serijalizacija . U vrijeme serijalizacije, ako ne želimo spremiti vrijednost određene varijable u datoteku, koristimo prolazna ključna riječ. Kada JVM naiđe prolazna ključna riječ zanemaruje izvornu vrijednost varijable i sprema zadanu vrijednost te vrste podataka varijable. prolazna ključna riječ igra važnu ulogu u ispunjavanju sigurnosnih ograničenja. Postoje različiti primjeri iz stvarnog života u kojima ne želimo spremati privatne podatke u datoteku. Još jedna upotreba prolazna ključna riječ nije serijalizirati varijablu čija se vrijednost može izračunati/izvesti pomoću drugih serijaliziranih objekata ili sustava kao što je dob osobe, trenutni datum itd. Praktično smo serijalizirali samo ona polja koja predstavljaju stanje instance nakon što je sva serijalizacija usmjerena na spremanje stanja objekta u datoteku. To je dobra navika za korištenje prolazna 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   }   
prolazno i ​​statično: Od statički polja nisu dio stanja objekta nema upotrebe/utjecaja korištenja prolazna ključna riječ sa statičkim varijablama. Međutim, nema pogreške kompilacije. prolazno i ​​konačno: konačne varijable su izravno serijalizirane svojim vrijednostima tako da nema koristi/utjecaja deklariranja konačne varijable kao prolazna . 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 

Možda Će Vam Se Svidjeti