讲师笔记,Java基础学习之路之day23——对象流,序列化,反序列化

对象流
    序列化:  把对象保存到文件 或者网络上
    ObjectOutputStream
        步骤:
            1.需要序列化的类 实现 Serializable接口 产生对象a
            2.产生ObjectOutputStream(OutputStream out)对象oos
            3. oos.writeObject(a)
    反序列化:从文件或者网络上 读取数据 重构出一个对象
    ObjectInputStream
        步骤:
            1.产生ObjectinputStream(inputStream in)对象ois
            2.ois.readObject()
    
        
    注意:
        用ObjectOutputStream写到文件中的数据
        必须通过ObjectInputStream读取
        而且 读的顺序 必须和写的顺序一致
        
        EOFException  (end of file Exception)
            如果读到了文件末尾,还继续读  会出现EOFException
            
        如果想用writeObject()或者 readObject() 读写一个对象
        那么该对象对应的类 一定要可以被序列化  实现Serializable接口
        
        serialVersionUID表示类的不同版本号
        serialVersionUID值 在读和写时保持一致
        如果UID读和写不一致 报错:InvalidClassException
    
    ------------------------------------------------------
    
     1.预习 反射
     2.定义一个方法 输入一个文件名称 和 一个字符串 统计该字符串在文件中出现的次数
      public static int count(String path,String s)

比如 a.txt:
abcdeabcfghh
trterabc
trterabc
ddfdfdfs

统计“abc”字符串出现的次数:4

猜你喜欢

转载自blog.csdn.net/u011189148/article/details/81417216