编程语言
首页 > 编程语言> > Java第十四章小结

Java第十四章小结

作者:互联网

1.Java中流的分类有哪些?

流从流动方向上看:一般分为输入流和输出流
输入流:如System.in是一个InputStream类型输入流
输出流:如System.out 是一个PrintStream类型输出流

从读取类型上分:一般分为字节流和字符流
字节流:如System.in是一个InputStream类型字节流
字符流:如new InputStreamReader(System.in)是一个字符流对象

流从发生的源头:分为节点流和过滤流类
节点流:直接操作目标设备对应的流 。过滤流:继承带有关键字Filter的流

2.字节流InputStream和OutputStream的子类分别有哪些?请举例说明其使用场景。与其对应的字符流分别有哪些

InputStream的子类
FileInputStream 文件流
PipedInputStream 管道输入流,读取管道内容
ObjectInputStream用来恢复被序列化的对象
ByteArrayInputStream包含一个内存缓冲区,字节从中取出。

SequenceInputStream 是多种输入流的逻辑串联,从第一个输入流读取,直到最后一个输入流
FilterInputStream 过滤流,在读写数据的同时还可以对数据进行特殊处理

OutputStream的子类
FileOutputStream 文件流
PipedOutputStream 管道流
ObjectOutputStream将对象序列化后写入指定地方
ByteArrayOutputStream在字节数组和流之间搭建桥梁

SequenceOutputStream 是多种输入流的逻辑串联
FilterInputStream 过滤流,在读写数据的同时还可以对数据进行特殊处理

3.字节流与字符流的转化是怎样的?Java对此提供了哪些支持?

输入字节流转为字符流需要用到inputstreamReader的构造方法

输出字符流转为字节流用到OutputStreamWriter或PrintWriter的构造方法

//InputStreamReader(InputStream in)
 
//例如:
InputStreamReader ins = new InputStreamReader(System.in);
InputStreamReader ins = new InputStreamReader(new FileInputStream(“test.txt”));

//OutputStreamWriter(OutputStream out)
//PrintWriter(OutputStream out)
//例如:
OutputStreamWriter outs = new OutputStreamWriter(new FileOutputStream(“test.txt”));

4.Java中的过滤流(流的装配)有什么作用?请举例说明常用的过滤流。

过滤流:BufferedInputStream和BufferedOutputStream, 缓存作用,用于装配文件磁盘、网络设备、终端等读写开销大的节点流,提高读写性能。

5.什么是对象的序列化和反序列化?Java对此提供了哪些支持?

序列化,将实现了Seriallizable接口的对象转换成一个字节序列,并能够在以后将这个字节序列完全恢复为原来的对象,后者又称反序列化。

支持:使用ObjectInputStream类和ObjectOutputStream类

6.Java的File类表示什么?有什么作用?

File类不仅指系统中的文件,也指目录,因为目录也是特殊的文件。
作用:表示一个文件对象,文件(或目录)路径名字的抽象表示。

7.Java对文件的读写分别提供了哪些支持?

1.File 文件(或目录)路径名字的抽象表示
2.FileDescriptor 代表一个打开文件的文件描述。
3.FileFilter & FilenameFilter 接口,列出满足条件的文件,用于:
File.list(FilenameFilter fnf)
File.listFiles(FileFilter ff)
FileDialog.setFilenameFilter(FilenameFilter fnf)
FileDialog是java.awt包中的类。
4.FileInputStream 以字节流的形式顺序读文件。
5.FileReader 以字符流的形式顺序读文件。
6.FileOutputStream 以字节流的形式顺序写文件。
7.FileWriter 以字符流的形式顺序写文件。
8.RandomAccessFile提供对文件的随机访问支持。
 

标签:文件,Java,字节,字符,InputStreamReader,第十四章,序列化,小结
来源: https://blog.csdn.net/weixin_52867343/article/details/122155849