Quel est le mot-clé transitoire en Java

Quel Est Le Mot Cle Transitoire En Java



Dans la programmation Java, le programmeur peut être obligé de s'abstenir d'écrire certaines valeurs dans le fichier de temps en temps. Par exemple, éviter les valeurs correspondant à un type de données spécifique en fonction de la demande d'exécution. Dans de tels cas, le « transitoire ” Le mot-clé en Java permet de gagner du temps et évite la réaffectation des valeurs du côté du développeur.

Ce blog détaillera l'utilisation et l'implémentation du mot-clé 'transient' en Java.

Qu'est-ce que le mot-clé 'transitoire' en Java ?

Le Java ' transitoire ' mot-clé est utilisé pour éviter ' sérialisation ”. Si un objet d'une structure de données est alloué en tant que transitoire, cela signifie qu'il ne sera pas sérialisé. Cela fonctionne de telle sorte que si une variable particulière est allouée comme transitoire, elle ne peut pas être écrite dans le fichier, et '​ 0 ” est stocké à la place.







Syntaxe



privé transitoire < mem var > ;

Dans cette syntaxe, ' mem var » pointe vers la variable allouée comme « transitoire ”.



Avant de passer à l'exemple, assurez-vous d'inclure les bibliothèques suivantes pour travailler avec le ' Sérialisable ” interface et accéder à toutes les classes et méthodes, respectivement :





importer java.io.Serializable ;

importer java.io.* ;

Démonstration du mot-clé 'transient' en Java

Dans l'exemple suivant, le ' transitoire Le mot-clé ” peut être associé à une variable telle que sa valeur passée dans l'objet ne puisse pas être écrite dans le fichier :

public classe clé transitoire met en oeuvre Sérialisable {

Chaîne nom ;

Chaîne ville ;

transitoire entier âge ;

clé transitoire ( Chaîne nom, Chaîne ville, entier âge ) {

ce . nom = nom ;

ce . ville = ville ;

ce . âge = âge ;

}

Selon les lignes de code ci-dessus, appliquez les étapes ci-dessous :



  • Tout d'abord, définissez une classe nommée ' clé transitoire « qui met en œuvre » Sérialisable ” pour rendre l'objet de classe sérialisable et permettre la conversion d'un objet à enregistrer sous la forme d'un fichier.
  • Dans la définition de classe, spécifiez les variables indiquées avec le ' âge ' attribué comme ' transitoire ”.
  • Maintenant, créez un constructeur de classe ayant les paramètres indiqués identiques aux variables spécifiées.
  • Dans la définition du constructeur, faites référence aux variables spécifiées et attribuez-leur les valeurs de paramètre via ' ce ”.

Maintenant, aperçu le ' principal ' extrait de code:

public statique annuler principal ( Chaîne arguments [ ] ) jette Exception {

objet transientkey = nouveau clé transitoire ( 'Harry' , 'Londres' , 22 ) ;

FileOutputStream fileOut = nouveau FileOutputStream ( 'fichier par défaut.txt' ) ;

ObjectOutputStream objOut = nouveau ObjectOutputStream ( fileOut ) ;

objOut. écrireObjet ( objet ) ;

objOut. affleurer ( ) ;

objOut. fermer ( ) ;

fichierOut. fermer ( ) ;

Système . dehors . println ( 'Données stockées avec succès !' ) ;

ObjectInputStream déposer = nouveau ObjectInputStream ( nouveau FileInputStream ( 'fichier par défaut.txt' ) ) ;

transientkey readData = ( clé transitoire ) déposer. readObject ( ) ;

Système . dehors . println ( readData. nom + ' ' + readData. ville + ' ' + readData. âge + '' ) ;

déposer. fermer ( ) ;

} }

Dans le ' principal ”, considérez les étapes ci-dessous:

  • Créez un objet de classe via le ' nouveau » mot-clé et le « clé transitoire() ” constructeur, respectivement, et transmettez les valeurs indiquées comme arguments du constructeur.
  • À l'étape suivante, créez un ' FileOutputStream ” objet pour écrire les données transmises à l'objet spécifié déposer .
  • Après cela, créez également un ' ObjectOutputStream ” objet pour écrire des objets qui peuvent être lus par le “ ObjectInputStream ”.
  • Maintenant, appliquez le ' écrireObjet() ” pour écrire l'objet de classe spécifié dans la “ ObjectOutputStream ”.
  • Pour rincer et fermer le flux, appliquez le ' affleurer() ' et ' fermer() ” méthodes, respectivement.
  • Pour lire le fichier, créez un ' ObjectInputStream ' objet et accumuler le fichier écrit comme un ' FileInputStream ” paramètre pour récupérer les octets d'entrée du déposer .
  • Enfin, lisez le contenu du fichier en vous référant à l'objet de classe créé ' clé transitoire ”.
  • Algorithme: Les valeurs passées dans l'objet seront écrites dans le fichier à l'exception de la valeur allouée en tant que ' transitoire ”. A la lecture du fichier, toutes les valeurs seront récupérées mais la valeur transitoire s'affichera sous la forme ' 0 ”.

Code entier

public classe clé transitoire met en oeuvre Sérialisable {

Chaîne nom ;

Chaîne ville ;

transitoire entier âge ;

clé transitoire ( Chaîne nom, Chaîne ville, entier âge ) {

ce . nom = nom ;

ce . ville = ville ;

ce . âge = âge ;

}

public statique annuler principal ( Chaîne arguments [ ] ) jette Exception {

objet transientkey = nouveau clé transitoire ( 'Harry' , 'Londres' , 22 ) ;

FileOutputStream fileOut = nouveau FileOutputStream ( 'fichier par défaut.txt' ) ;

ObjectOutputStream objOut = nouveau ObjectOutputStream ( fileOut ) ;

objOut. écrireObjet ( objet ) ;

objOut. affleurer ( ) ;

objOut. fermer ( ) ;

fichierOut. fermer ( ) ;

Système . dehors . println ( 'Données stockées avec succès !' ) ;

ObjectInputStream déposer = nouveau ObjectInputStream ( nouveau FileInputStream ( 'fichier par défaut.txt' ) ) ;

transientkey readData = ( clé transitoire ) déposer. readObject ( ) ;

Système . dehors . println ( readData. nom + ' ' + readData. ville + ' ' + readData. âge + '' ) ;

déposer. fermer ( ) ;

} }

Sortir

Dans le résultat ci-dessus, on peut sous-entendre que puisque le «  âge ' est attribué comme ' transitoire ', par conséquent, sa valeur n'est pas écrite dans le fichier et récupérée en conséquence, c'est-à-dire ' 0 ”.

Fichier créé

Le fichier créé est affiché ci-dessous :

Il s'agissait de l'utilisation du mot-clé transient en Java.

Conclusion

Le mot-clé Java transient est utilisé pour s'abstenir de la sérialisation de sorte que si une variable particulière est affectée en tant que ' transitoire ”, il ne peut pas être écrit dans le fichier, et “​ 0 ” est stocké à la place. Cet article a discuté de l'utilisation et de la mise en œuvre du ' transitoire ” mot-clé en Java.