流
流代表的是程序中数据的流通
数据流是一段连续不断的数据的集合
在Java程序中,对于数据的输入和输出操作是以流的方式进行的
思维导图:
节点流:可以从一个特定地方(节点)读写数据
处理流:是对一个已经存在的流的链接和封装,通过封装的流的功能调用,实现数据读写,例如:BufferedReader/BufferedWriter
处理流的构造方法总是要带一个其他的流的对象做参数,一个流对象经过其他流的多次包装 ,称为流的连接
序列化
简单来说为了保存在内存中各种对象的状态(也就是实例变量 , 不是方法),并且把保存状态在读取出来
虽然可以使用各种方法保存对象的状态,但Java给开发者提供了一种较好的方式保存对象状态的机制,就是序列化
什么情况下使用序列化
当你想把内存中的对象状态保存到一个文件中或者数据库的时候
当你想用套接字(TCP用主机上的IP地址加上主机上的端口号作为TCP连接端点) 在网络上传送对象的时候
通过RMI(远程方法调用) 传输对象的时候