Каква е преходната ключова дума в Java

Kakva E Prehodnata Klucova Duma V Java



При програмирането на Java може да има изискване към програмиста да се въздържа от записване на определени стойности във файла от време на време. Например избягване на стойностите, съответстващи на конкретен тип данни в съответствие с изискването за изпълнение. В такива случаи „ преходен ” в Java помага за спестяване на време и избягва пренасочването на стойностите от страна на разработчика.

Този блог ще разработи подробно използването и прилагането на ключовата дума „transient“ в Java.

Какво представлява „преходната“ ключова дума в Java?

Java“ преходен „ключовата дума се използва за избягване на“ сериализация ”. Ако някой обект от структура от данни е разпределен като преходен, това означава, че той няма да бъде сериализиран. Работи така, че ако определена променлива е определена като преходна, тя не може да бъде записана във файла и „​ 0 ” се съхранява вместо това.







Синтаксис



частен преходен < mem var >;

В този синтаксис „ mem var ” сочи към променливата, разпределена като „ преходен ”.



Преди да се насочите към примера, не забравяйте да включите следните библиотеки за работа с „ Може да се сериализира ” интерфейс и съответно достъп до всички класове и методи:





импортиране java.io.Serializable ;

импортиране java.io.* ;

Демонстрация на „преходната“ ключова дума в Java

В следния пример „ преходен Ключовата дума ” може да бъде свързана с променлива, така че нейната предадена стойност в обекта да не може да бъде записана във файла:

публичен клас преходен ключ инструменти Може да се сериализира {

низ име ;

низ град ;

преходен вътр възраст ;

преходен ключ ( низ име, низ град, вътр възраст ) {

това . име = име ;

това . град = град ;

това . възраст = възраст ;

}

Съгласно горните редове код, приложете посочените по-долу стъпки:



  • Първо, дефинирайте клас с име „ преходен ключ ', който прилага' Може да се сериализира ”, за да направи обекта на класа сериализираем и да позволи преобразуването на обект да бъде записан под формата на файл.
  • В дефиницията на класа посочете посочените променливи с „ възраст ” присвоено като „ преходен ”.
  • Сега създайте конструктор на клас с посочените параметри, идентични на посочените променливи.
  • В дефиницията на конструктора се обърнете към посочените променливи и им задайте стойностите на параметрите чрез „ това ”.

Сега прегледайте „ основен ” кодов фрагмент:

публичен статичен невалиден основен ( низ аргументи [ ] ) хвърля Изключение {

преходен ключов обект = нов преходен ключ ( 'Хари' , 'Лондон' , 22 ) ;

FileOutputStream fileOut = нов FileOutputStream ( 'defaultfile.txt' ) ;

ObjectOutputStream objOut = нов ObjectOutputStream ( fileOut ) ;

objOut. writeObject ( обект ) ;

objOut. флъш ( ) ;

objOut. близо ( ) ;

fileOut. близо ( ) ;

Система . навън . println ( „Данните са съхранени успешно!“ ) ;

ObjectInputStream файл = нов ObjectInputStream ( нов FileInputStream ( 'defaultfile.txt' ) ) ;

transientkey readData = ( преходен ключ ) файл. readObject ( ) ;

Система . навън . println ( readData. име + ' ' + readData. град + ' ' + readData. възраст + '' ) ;

файл. близо ( ) ;

} }

в „ основен “, разгледайте посочените по-долу стъпки:

  • Създайте клас обект чрез „ нов “ ключова дума и „ преходен ключ() ”, съответно и подават посочените стойности като аргументи на конструктора.
  • В следващата стъпка създайте „ FileOutputStream ” обект за записване на предадените данни в посочения файл .
  • След това по същия начин създайте „ ObjectOutputStream ” обект за запис на обекти, които могат да бъдат прочетени от „ ObjectInputStream ”.
  • Сега приложете „ writeObject() ” за запис на посочения обект от клас в „ ObjectOutputStream ”.
  • За да прочистите и затворите потока, приложете „ флъш() ' и ' близо() ” методи, съответно.
  • За да прочетете файла, създайте „ ObjectInputStream ” обект и натрупва записания файл като „ FileInputStream ” параметър за извличане на входните байтове от файл .
  • И накрая, прочетете съдържанието на файла, като се позовавате на създадения клас обект ' преходен ключ ”.
  • Алгоритъм: Стойностите, предадени в обекта, ще бъдат записани във файла, с изключение на стойността, разпределена като „ преходен ”. При четене на файла всички стойности ще бъдат извлечени, но преходната стойност ще се покаже като „ 0 ”.

Целият код

публичен клас преходен ключ инструменти Може да се сериализира {

низ име ;

низ град ;

преходен вътр възраст ;

преходен ключ ( низ име, низ град, вътр възраст ) {

това . име = име ;

това . град = град ;

това . възраст = възраст ;

}

публичен статичен невалиден основен ( низ аргументи [ ] ) хвърля Изключение {

преходен ключов обект = нов преходен ключ ( 'Хари' , 'Лондон' , 22 ) ;

FileOutputStream fileOut = нов FileOutputStream ( 'defaultfile.txt' ) ;

ObjectOutputStream objOut = нов ObjectOutputStream ( fileOut ) ;

objOut. writeObject ( обект ) ;

objOut. флъш ( ) ;

objOut. близо ( ) ;

fileOut. близо ( ) ;

Система . навън . println ( „Данните са съхранени успешно!“ ) ;

ObjectInputStream файл = нов ObjectInputStream ( нов FileInputStream ( 'defaultfile.txt' ) ) ;

transientkey readData = ( преходен ключ ) файл. readObject ( ) ;

Система . навън . println ( readData. име + ' ' + readData. град + ' ' + readData. възраст + '' ) ;

файл. близо ( ) ;

} }

Изход

В горния резултат може да се подразбира, че тъй като „ възраст ” се разпределя като „ преходен “, следователно стойността му не е записана във файла и съответно извлечена, т.е., „ 0 ”.

Създаден файл

Създаденият файл се показва по-долу:

Това беше всичко относно използването на ключовата дума transient в Java.

Заключение

Ключовата дума Java transient се използва за въздържане от сериализация, така че ако определена променлива е присвоена като „ преходен “, не може да бъде записано във файла, и „​ 0 ” се съхранява вместо това. Тази статия обсъжда използването и прилагането на „ преходен ” ключова дума в Java.