JAVA自学笔记,I/O 输入/输出流

输入/输出流

Java语言定义了许多类专门负责各种方式的输入/输出,这些类都被放在java.io包中。其中,所有输入流类都是抽象类InputStream(字节输入流)或抽象类Reader(字符输入流)的子类。而所有输出流都是抽象类OutputStream(字节输入流)或抽象类Writer(字符输出流)的子类。

输入流

输入流抽象类包括两种,分别是InputStream字节输入流和Reader字符输入流,下面分别介绍。

InputStream

InputStream类是字节输入流的抽象类,是所有字节输入流的父类。InputStream类的具体层次接口
在这里插入图片描述
InputStream类中所有方法遇到错误时都会引发IOException异常,该类的常用方法及说明如下表。
在这里插入图片描述
并不是所有的InputStream类的子类都支持InputStream中定义的所有方法,如skip,mark,reset等方法只对某些子类有用。

Reader类

Java中的字符是Unicode编码,是双字节的,而InputStream类是用来处理字节的。并不适合处理字符文本。Java为字符文本的输入专门提供了一套单独的Reader类,但Reader类并不是InputStream类的替换者,是指在处理字符时简化了编程,Reader类是字符输入流的抽象类,所有字符输入流的实现都是它的子类。Reader类的集体层次如下图。
在这里插入图片描述
Reader类中的方法与InputStream类中的方法类似,但需要注意的一点是,Reader类中的read方法的参数为char类型的数组。另外,它还提供了一个ready方法,该方法用来判断是否准备读取流,返回值为boolean值。

输出流

输出流的抽象类包括两种,分别是OutputStream字节输出流和Write字符输出流。

OutputStream

OutputStream类
OutputStream类是字节输出流的抽象类,此抽象类是表示输出字节流的所有类的超类。OutputStream类的具体层次如下图。
在这里插入图片描述
OutputStream类中的所有方法均返回void,在遇到错误时会引发IOException异常,该类的常用方法及说明如下表。
在这里插入图片描述

Wirter类

Writer类是字符输出流的抽象类,所有字符输出类的实现都是它的子类。Writer类的层次结构如下图。
在这里插入图片描述
Writer类的常用方法如下表。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值