zoukankan      html  css  js  c++  java
  • Java IO 对象流

    Java IO 对象流


    对象流指的是可以直接把一个对象以流的形式传输给其他的介质,比如硬盘

    一个对象以流的形式进行传输,叫做序列化。 该对象所对应的类,必须是实现Serializable接口


    序列化一个对象

    创建一个Hero对象,设置其名称为garen。
    把该对象序列化到一个文件garen.lol。
    然后再通过序列化把该文件转换为一个Hero对象

    注:把一个对象序列化有一个前提是:这个对象的类,必须实现了Serializable接口

    package JavaIOTest;
    
    import java.io.Serializable;
    
    public class Hero implements Serializable {
        //表示这个类当前的版本,如果有了变化,比如新设计了属性,就应该修改这个版本号
        private static final long serialVersionUID = 1L;
        public String name;
        public float hp;
    }
    
    
    package JavaIOTest;
    
    import java.io.*;
    
    public class ObjectStreamTest {
        public static void main(String[] args) {
            //创建一个Hero对象 garen
            Hero garen = new Hero();
            garen.name = "garen";
            garen.hp = 616;
            //准备一个文件用于保存该对象
            File file = new File("d:/xyz/z/zzz/zzzz/garen.lol");
            try(
                    //创建对象输出流
                    FileOutputStream fileOutputStream = new FileOutputStream(file);
                    ObjectOutputStream objectOutputStream = new ObjectOutputStream(fileOutputStream);
                    //创建对象输入流
                    FileInputStream fileInputStream = new FileInputStream(file);
                    ObjectInputStream objectInputStream = new ObjectInputStream(fileInputStream)
                    )
            {
                objectOutputStream.writeObject(garen);
                Hero h = (Hero) objectInputStream.readObject();
                System.out.println(h.name);
                System.out.println(h.hp);
            }catch (IOException | ClassNotFoundException e) {
                e.printStackTrace();
            }
        }
    }
    
  • 相关阅读:
    算法竞赛进阶指南 0.1
    补题 : 过分的谜题
    矩阵快速幂【模板】
    10774: matrix
    火车进出栈问题 【求卡特兰数】
    [最小割]StoerWagner算法
    安装、使用sklearn
    [线段树]跳蚤
    [树形dp][换根]Maximum White Subtree
    [组合数学]Many Many Paths
  • 原文地址:https://www.cnblogs.com/PythonFCG/p/13860159.html
Copyright © 2011-2022 走看看