摘要:
一. 序列化和反序列化的概念 对象序列化:把对象转换为字节序列的过程 对象反序列化:把字节序列恢复为对象的过程 1. 为何要进行序列化 我们知道当虚拟机停止运行之后,内存中的对象就会消失。在很多应用中,需要对某些对象进行序列化,让他们离开内存空间,进入物理硬盘,便于长期保存。例如,最常见的是WEB服 阅读全文
摘要:
Java的System类提供了一些简单的静态方法调用,以允许我们对标准输入、输出和错误I/O流进行重定向: setIn(InputStream) setOut(PrintStream) setErr(PrintStream) 如果我们突然开始在显示器上创建大量输出,而这些输出滚动得太快以至于无法阅读 阅读全文
摘要:
一. 源码结构 我们可以看到它的父类是Object,没有继承字节流、字符流家族中任何一个类。并且它实现了DataInput、DataOutput这两个接口,也就意味着这个类既可以读也可以写。RandomAccessFile 是随机访问文件(包括读/写)的类。它支持对文件随机访问的读取和写入,即我们可 阅读全文
摘要:
一.流的分类 1、从功能上:输入流、输出流 2、从结构上:字节流、字符流 3、从来源上:节点流、过滤流 其中InputStream/OutputStream是为字节流而设计的,Reader/Writer是为字符流而设计的。处理字节或者二进制对象使用字节流,处理字符或者字符串使用字符流。 在最底层,所 阅读全文
摘要:
Java中的流是个抽象的概念,当程序需要从某个数据源读入数据的时候,就会开启一个数据流,数据源可以是文件、内存或网络等等。相反地,需要写出数据到某个数据源目的地的时候,也会开启一个数据流,这个数据源目的地也可以是文件、内存或网络等等 一. 字符流的引入 正如字节流中所看到的,有时候当一个中文字符含有 阅读全文
摘要:
IO概述 Java IO 是一套Java用来读写数据(输入和输出)的API。大部分程序都要处理一些输入,并由输入产生一些输出。Java为此提供了java.io包。 Java的IO包主要关注的是从原始数据源的读取以及输出原始数据到目标媒介。以下是最典型的数据源和目标媒介: 文件 管道 网络连接 内存缓 阅读全文