精华内容
下载资源
问答
  • 面试题汇总 java IO 流分为几种

    面试题汇总

    java 中 IO 流分为几种?

    • 按照流的流向分,可以分为输入流和输出流;
    • 按照操作单元划分,可以划分为字节流和字符流;
    • 按照流的角色划分为节点流和处理流。

    字节流:二进制,可以处理一切文件,包括:纯文本、doc、音频、视频等。
    字符流:文本文件,只能处理纯文本。
    节点流:包裹源头。
    处理流:增强功能,提高性能。

    Java Io流共涉及40多个类,这些类看上去很杂乱,但实际上很有规则,而且彼此之间存在非常紧密的联系, Java IO流的40多个类都是从如下4个抽象类基类中派生出来的。

    • InputStream/Reader: 所有的输入流的基类,前者是字节输入流,后者是字符输入流。
    • OutputStream/Writer: 所有输出流的基类,前者是字节输出流,后者是字符输出流。

    按操作方式分类结构图:

    在这里插入图片描述

    按操作对象分类结构图:
    在这里插入图片描述

    展开全文
  • java基础:11、java中IO流分为几种

    java中IO流分为几种?

    1、IO流概念

    流是从一端到另一端,连接了源头和目的地。
    IO流可以理解为连接程序文件/数组/网络连接/数据库

    2、IO流分类

    (1)按流向分类:
    输入流
    输出流
    (2)按处理数据不同分类:
    字节流:二进制,可以处理一切文件,包括:纯文本、doc、音频、视频等。
    字符流:文本文件,只能处理纯文本。
    (3)按功能不同分类:
    节点流:包裹源头。
    处理流:增强功能,提高性能。

    3、IO流具体分类

    在这里插入图片描述

    按操作方式分类

    在这里插入图片描述

    按操作对象分类

    在这里插入图片描述
    一般操作流的步骤:
    (1)创建源
    (2)选择流
    (3)操作流(读取|写出)
    (4)释放资源

    推荐相关文章:
    IO流实现文件的读取与写出,文件、文件夹的拷贝

    展开全文
  • Java IO 流分为几种?

    万次阅读 2019-07-17 10:51:27
    java IO 流分为几种? 按照流的流向分,可以分为输入流和输出流; 按照操作单元划分,可以划分为字节流和字符流; 按照流的角色划分为节点流和处理流。 Java Io流共涉及40多个类,这些类看上去很杂乱,但实际上...

    java 中 IO 流分为几种?

    • 按照流的流向分,可以分为输入流和输出流;
    • 按照操作单元划分,可以划分为字节流和字符流;
    • 按照流的角色划分为节点流和处理流。

    Java Io流共涉及40多个类,这些类看上去很杂乱,但实际上很有规则,而且彼此之间存在非常紧密的联系, Java IO流的40多个类都是从如下4个抽象类基类中派生出来的。

    • InputStream/Reader: 所有的输入流的基类,前者是字节输入流,后者是字符输入流。
    • OutputStream/Writer: 所有输出流的基类,前者是字节输出流,后者是字符输出流。

    按操作方式分类结构图:
    在这里插入图片描述
    按操作对象分类结构图:
    在这里插入图片描述

    BIO,NIO,AIO 有什么区别?

    • BIO (Blocking I/O): 同步阻塞I/O模式,数据的读取写入必须阻塞在一个线程内等待其完成。在活动连接数不是特别高(小于单机1000)的情况下,这种模型是比较不错的,可以让每一个连接专注于自己的 I/O 并且编程模型简单,也不用过多考虑系统的过载、限流等问题。线程池本身就是一个天然的漏斗,可以缓冲一些系统处理不了的连接或请求。但是,当面对十万甚至百万级连接的时候,传统的 BIO 模型是无能为力的。因此,我们需要一种更高效的 I/O 处理模型来应对更高的并发量。
    • NIO (New I/O): NIO是一种同步非阻塞的I/O模型,在Java 1.4 中引入了NIO框架,对应 java.nio 包,提供了 Channel , Selector,Buffer等抽象。NIO中的N可以理解为Non-blocking,不单纯是New。它支持面向缓冲的,基于通道的I/O操作方法。 NIO提供了与传统BIO模型中的 Socket 和 ServerSocket 相对应的 SocketChannel 和 ServerSocketChannel 两种不同的套接字通道实现,两种通道都支持阻塞和非阻塞两种模式。阻塞模式使用就像传统中的支持一样,比较简单,但是性能和可靠性都不好;非阻塞模式正好与之相反。对于低负载、低并发的应用程序,可以使用同步阻塞I/O来提升开发速率和更好的维护性;对于高负载、高并发的(网络)应用,应使用 NIO 的非阻塞模式来开发
    • AIO (Asynchronous I/O): AIO 也就是 NIO 2。在 Java 7 中引入了 NIO 的改进版 NIO 2,它是异步非阻塞的IO模型。异步 IO 是基于事件和回调机制实现的,也就是应用操作之后会直接返回,不会堵塞在那里,当后台处理完成,操作系统会通知相应的线程进行后续的操作。AIO 是异步IO的缩写,虽然 NIO 在网络操作中,提供了非阻塞的方法,但是 NIO 的 IO 行为还是同步的。对于 NIO 来说,我们的业务线程是在 IO 操作准备好时,得到通知,接着就由这个线程自行进行 IO 操作,IO操作本身是同步的。查阅网上相关资料,我发现就目前来说 AIO 的应用还不是很广泛,Netty 之前也尝试使用过 AIO,不过又放弃了。
    展开全文
  • 一、Java 中 IO 流分为几种 Java中的流分为两种,一种是字节流,另一种是字符流,分别由四个抽象类来表示(每种流包括输入和输出两种所以一共四个),Java中其他多种多样变化的流均是由它们派生出来的. 字节流:...

    一、Java 中 IO 流分为几种

    Java中的流分为两种,一种是字节流,另一种是字符流,分别由四个抽象类来表示(每种流包括输入和输出两种所以一共四个),Java中其他多种多样变化的流均是由它们派生出来的.

    • 字节流:InputStream,OutputStream。

    • 字符流: Reader,Writer。

    二、字符流和字节流的区别

    • 字符流和字节流是根据处理数据的类型的不同来区分的。

    • 字节流按照8位传输,字节流是最基本的,所有文件的储存是都是字节(byte)的储存,在磁盘上保留的并不是文件的字符而是先把字符编码成字节,再储存这些字节到磁盘。

    • 字节流可用于任何类型的对象,包括二进制对象,而字符流只能处理字符或者字符串;

    • 字节流提供了处理任何类型的IO操作的功能,但它不能直接处理Unicode字符,而字符流就可以。

    • 理论上任何文件都能够用字节流读取,但当读取的是文本数据时,为了能还原成文本你必须再经过一个转换的工序,相对来说字符流就省了这个麻烦,可以有方法直接读取。所以,如果是处理纯文本数据,就要优先考虑字符流,除此之外都是用字节流。

    展开全文
  • java IO 流分为几种? 按照流的流向分,可以分为输入流和输出流; 按照操作单元划分,可以划分为字节流和字符流; 按照流的角色划分为节点流和处理流。 Java Io流共涉及40多个类,这些类看上去很杂乱,但实际上...
  • java IO 流分为几种?

    千次阅读 2019-07-06 13:30:58
    按照的流向分,可以分为输入和输出; 按照操作单元划分,可以划分为字节和字符; 按照的角色划分为节点和处理。 所有的基类 InputStream/Reader: 所有的输入的基类,前者是字节输入,后者...
  • 按功能来分:输入(input)、输出(output)。 按类型来分:字节和字符。 字节和字符的区别是:字节按 8 位传输以字节为单位输入输出数据,字符按 16 位传输以字符为单位输入输出数据。 ...
  • java IO 流分为几种? •按照流的流向分,可以分为输入流和输出流; •按照操作单元划分,可以划分为字节流和字符流; •按照流的角色划分为节点流和处理流。 Java Io流共涉及40多个类,这些类看上去很杂乱,...
  • Java中,把这些不同类型的输入、输出源抽象为(Stream),其中输入或输出的数据称为数据(Data Stream),用统一的接口来表示。 IO 的分类 数据是指一组有顺序的、有起点和终点的字节集合。 按照的流向...
  • 按功能来分:输入(input)、输出(output)。 按类型来分:字节和字符。 字节和字符的区别是:字节按 8 位传输以字节为单位输入输出数据,字符按 16 位传输以字符为单位输入输出数据 ...
  • 1.JavaIO流是什么? IO:即in和out,输入和输出,指的是应用程序和外部设备之间的数据传递; Java是通过流来处理IO的,流(Stream)是一个抽象的概念,是指一连串的树(字符或字节),是以先进先出的方式发送信息的...
  • 一、IO 流分为几种 Java中的流分为两种,一种是字节流,另一种是字符流,分别由四个抽象类来表示(每种流包括输入和输出两种所以一共四个):InputStream,OutputStream,Reader,Writer。Java中其他多种多样变化的流...
  • 一、Java中IO流分为几种、BIO,NIO,AIO有什么区别 1、Java中IO流分为几种 为什么有了字节流还要有字符流: 2、BIO、NIO、AIO有什么区别 BIO(Blocking I/O):低负载、低并发 NIO(Non-blocking/New I/O):...
  • Java中流分为,一是字节流,另一是字符流,分别由四个抽象类来表示(每流包括输入和输出两所以一共四个):InputStream,OutputStream,Reader,Writer。Java中其他多种多样变化的流均是由它们派生出来...
  • java的io是实现输入和输出的基础,可以方便的实现数据的输入和输出操作。...IO流可以分为字符流、字节流两大类。 字节流一个字节占8位(bit),字符流根据不同字符所占的字节不同而读取的大小不同,常见中文一个

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 167
精华内容 66
关键字:

java中io流分为几种

java 订阅