cari
RumahJavajavaTutorialApakah proses siri objek dalam Java?

Dalam Java, pensirilan objek menukarkan objek kepada strim bait, dan penyahsiran memulihkan strim bait menjadi objek. Sirialisasi memerlukan pelaksanaan antara muka Serializable, menyediakan objek dan menggunakan ObjectOutputStream untuk menulis data menggunakan ObjectInputStream untuk membaca data dan membina semula objek. Contohnya, kod itu mensirikan objek Orang dengan sifat nama dan umur dan menyahsirikannya daripada fail untuk mencetak maklumat.

Apakah proses siri objek dalam Java?

Proses Pensirian Objek dalam Java

Pengenalan

Pensirian ialah proses menukar objek kepada aliran bait dan menyimpannya dalam fail atau pada rangkaian. Penyahserialisasian ialah proses terbalik untuk menukar aliran bait yang disimpan kembali ke objek asal. Antara muka teras untuk penyiaran objek dalam Java ialah Serializable. Serializable

序列化过程

1. 实现 Serializable 接口: 类必须实现 Serializable 接口才能进行序列化。

2. 准备对象: 要序列化的对象必须实现 writeObject 方法,该方法将对象的字段写入输出流。如果对象包含其他可序列化的对象,则 writeObject 方法也需要调用这些对象的 writeObject 方法。

3. 创建 ObjectOutputStream 使用 ObjectOutputStream 将对象写入输出流。

4. 编写对象: 调用 writeObject 方法将对象写入输出流。

反序列化过程

1. 创建 ObjectInputStream 使用 ObjectInputStream 从输入流读取对象。

2. 读取对象: 调用 readObject 方法从输入流读取对象。如果对象包含其他可序列化的对象,则 readObject 方法也会调用这些对象的 readObject

Proses siri

1 Laksanakan antara muka Serializable:

Kelas mesti melaksanakan antara muka Serializable untuk diserikan.

2. Sediakan objek:

Objek yang akan disiri mesti melaksanakan kaedah writeObject, yang menulis medan objek ke aliran output. Jika objek mengandungi objek boleh bersiri lain, kaedah writeObject perlu memanggil kaedah writeObject objek tersebut juga. 🎜🎜🎜3 Cipta ObjectOutputStream: 🎜 Gunakan ObjectOutputStream untuk menulis objek ke strim output. 🎜🎜🎜4. Tulis objek: 🎜 Panggil kaedah writeObject untuk menulis objek ke aliran output. 🎜🎜Proses penyahserialisasian🎜🎜🎜1 Cipta ObjectInputStream: 🎜 Gunakan ObjectInputStream untuk membaca objek daripada aliran input. 🎜🎜🎜2 Baca objek: 🎜 Panggil kaedah readObject untuk membaca objek daripada aliran input. Jika objek mengandungi objek boleh bersiri lain, kaedah readObject turut memanggil kaedah readObject objek tersebut. 🎜🎜🎜3. Bina semula objek: 🎜 Selepas membaca semua data daripada aliran input, objek akan dibina semula menggunakan mekanisme pantulan. 🎜🎜Kes Praktikal🎜🎜Contoh kod berikut menunjukkan cara mensiri dan menyahsiri objek dalam Java: 🎜
import java.io.*;

public class Person implements Serializable {
    private String name;
    private int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;
    }

    @Override
    public void writeObject(ObjectOutputStream out) throws IOException {
        out.writeObject(name);
        out.writeInt(age);
    }

    @Override
    public void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException {
        name = (String) in.readObject();
        age = in.readInt();
    }

    public static void main(String[] args) {
        try (ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("person.ser"))) {
            Person person = new Person("John", 30);
            out.writeObject(person);
        } catch (IOException e) {
            e.printStackTrace();
        }

        try (ObjectInputStream in = new ObjectInputStream(new FileInputStream("person.ser"))) {
            Person person = (Person) in.readObject();
            System.out.println(person.name + ", " + person.age);
        } catch (IOException | ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

Atas ialah kandungan terperinci Apakah proses siri objek dalam Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Muat turun versi mac editor Atom

Muat turun versi mac editor Atom

Editor sumber terbuka yang paling popular

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa