Nous avons étudié ObjectInputStream
et ObjectOutputStream
lorsque nous apprenions JavaSE. À cette époque, nous pensions que tant qu'un objet doit être écrit dans un fichier, il doit l'implémenter. l'interface sérialisable. En fait, il n’y a absolument aucun problème à comprendre les choses de cette façon.
1. Introduction au problème
Pourquoi devrions-nous implémenter l'interface de sérialisation en Java ? Regardons l'image ci-dessous :
Dans le programme Java, une donnée est écrite sur le disque. Si cette donnée est une chaîne ordinaire, alors il n'y a pas de problème, tout. les machines peuvent Reconnaître une chaîne normalement, même si elle doit être convertie en octets correspondants, l'ordinateur sait aussi convertir la chaîne en octets correspondants (table de codes), mais s'il s'agit d'un objet Java, ce sera gênant . Le disque ne sait pas ce que vous avez transmis. Il s'agit d'un objet Java. En d'autres termes, le disque ne sait pas dans quel format convertir l'objet Java dans les octets correspondants.
Partage de didacticiels vidéo associés : apprentissage Java
Nous savons qu'un objet Java est essentiellement un bytecode de classe, et le disque ne sait pas comment écrire ce bytecode dans le disque, comment l'écrire, vous devez donc "l'identifier" et dire au disque : "Je suis un objet Java, vous voulez l'écrire sur le disque de cette façon", mais "l'écrire de cette façon" disque". Par conséquent, l'implémentation de l'interface Serialisable identifie simplement "Je suis un objet Java"
Si vous comprenez le texte ci-dessus, il ne sera pas difficile de comprendre l'image suivante :
2. Approfondir la compréhension
Java fournit un mécanisme de sérialisation d'objets. Un objet peut être représenté par une séquence d'octets contenant des informations telles que les données de l'objet, le type de l'objet et les attributs stockés dans l'objet. Une fois la séquence d'octets écrite dans le fichier, cela équivaut à conserver les informations d'un objet dans le fichier.
À l'inverse, la séquence d'octets peut également être relue à partir du fichier, reconstruire l'objet et le désérialiser. Les données de l'objet, le type de l'objet et les informations de données stockées dans l'objet peuvent toutes être utilisées pour créer des objets en mémoire. Regardez des images pour comprendre la sérialisation :
Articles et tutoriels connexes recommandés : Programme d'entrée Java
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!