Java序列化

作者: Marlon666 | 来源:发表于2017-12-06 19:53 被阅读3次

    序列化是啥玩意?

    Java 提供了一种对象序列化的机制,该机制中,一个对象可以被表示为一个字节序列,该字节序列包括该对象的数据、有关对象的类型的信息和存储在对象中数据的类型。
    将序列化对象写入文件之后,可以从文件中读取出来,并且对它进行反序列化,也就是说,对象的类型信息、对象的数据,还有对象中的数据类型可以用来在内存中新建对象。

    使用场景有哪些?

    在持久化对象时会用到对象序列化之外,当使用RMI(远程方法调用),或在网络中传递对象时,都会用到对象序列化

    实现的方法?

    1.implements java.io.Serializable
    2.ObjectOutputStream 和 ObjectInputStream

    案例

    '''

        User user = new User("小红", "18988383", 19, "工程师");
        File file = new File("user.out");
        try {
            FileOutputStream fos = new FileOutputStream(file);
            ObjectOutputStream out = new ObjectOutputStream(fos);
            out.writeObject(user);
            fos.close();
            out.close();
    
            FileInputStream fileInputStream = new FileInputStream(file);
            ObjectInputStream inputStream = new ObjectInputStream(fileInputStream);
            User user2 = (User) inputStream.readObject();
            fileInputStream.close();
            inputStream.close();
            System.out.println("User:" + user2.toString());
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    

    '''

    【超链接】(http://www.jianshu.com/p/ff770511a097

    相关文章

      网友评论

        本文标题:Java序列化

        本文链接:https://www.haomeiwen.com/subject/zalbbxtx.html