Pourquoi les variables transitoires ne sont-elles pas sérialisées ?
Pourquoi les variables transitoires ne sont-elles pas sérialisées ?

Vidéo: Pourquoi les variables transitoires ne sont-elles pas sérialisées ?

Vidéo: Pourquoi les variables transitoires ne sont-elles pas sérialisées ?
Vidéo: 8 MILLIARDS SUR TERRE : RÉDUIRE LA POPULATION POUR SAUVER LA PLANÈTE ? - Emmanuel Pont 2024, Peut
Anonim

transitoire est un mot-clé Java qui marque un membre variable non être sérialisé lorsqu'il est persisté dans des flux d'octets. Lorsqu'un objet est transféré via le réseau, l'objet doit être ' sérialisé '. Sérialisation convertit l'état de l'objet en octets série.

En conséquence, la variable transitoire peut-elle être sérialisée ?

UNE variable transitoire est un variable cette pouvez ne pas être sérialisé . Selon la spécification du langage Java [jls-8.3. 1.3] - " Variables peut être marqué transitoire pour indiquer qu'ils ne font pas partie de l'état persistant d'un objet.

À côté de ci-dessus, pourquoi avons-nous besoin de variables transitoires en Java ? transitoire est une variables modificateur utilisé dans la sérialisation. Au moment de la sérialisation, si nous ne pas vouloir pour économiser la valeur d'un particulier variable dans un fichier, puis nous utilisation transitoire mot-clé. Quand JVM arrive transitoire mot-clé, il ignore la valeur d'origine du variable et enregistrez la valeur par défaut de celle-ci variable Type de données.

A côté de cela, pourquoi les variables statiques et transitoires ne sont pas sérialisées ?

Variables statiques : Ces les variables ne sont pas sérialisées , donc lors de la désérialisation variable statique valeur sera chargée à partir de la classe. Variables transitoires : les variables transitoires ne sont pas sérialisées , donc pendant la désérialisation ces variables sera initialisé avec les valeurs par défaut correspondantes (ex: pour les objets null, int 0).

Pourquoi les champs statiques ne sont pas sérialisés ?

Statique Variable. Statique les variables appartiennent à une classe et ne pas à toute instance individuelle. La notion de sérialisation concerne l'état actuel de l'objet. Seules les données associées à une instance spécifique d'une classe sont sérialisé , donc statique membre des champs sont ignorés pendant sérialisation.

Conseillé: