1、缓冲流为什么会提高IO流读写的效率?
因为缓冲流里面有一个缓冲区数组,每次读写数据的时候都会先把数据先保存在缓冲区数组里,然后再进行返回.一次返回一个数组,比一次返回几个字节的方式快,读写效率也更高.
2、我们在读写过程中,什么情况下会发生写入乱码问题?是怎样产生的?我们是如何解决的?
(1.)在编码和解码的方式不一致的时候会发生乱码.
(2.)当读取Windows系统中创建的文本文件时,由于Windows系统的默认是GBK编码,使用IDEA默认编码格式UTF-8读取文件时就会出现乱码.
解决:保证编码和解码的字符集方式保持一致就不会出现乱码
3、序列化流中的serialVersionUID的作用
作用:保证序列号唯一,不会被覆盖更改
4、请根据自己的语言表述IO流的体系
IO流分为两个方向:类型和流向
1.类型又分为:字节流和字符流
流向又分为:字节输入流和字节输出流;字符输入流和字符输出流
2.我们无论使用什么样的流对象,底层传输的始终是二进制数据.所以字节流可以处理任何数据类型的文件.字符流只可以处理文本类型的文件.
3.字节流和字符流有各自的增强功能在读取的时候能够使用更加高效的缓冲流作为流对象传输,读写速度更快.
又有可以转换编码格式的转换流,解决出现乱码的问题.
4.序列化流和反序列化流,可以在文本和对象中来回读写.
序列化流可以将对象作为文件持久化存储.
反序列化流可以将文本文件重构成为一个对象,进行读取.
|