美文网首页
2020-09-21 Java IO流

2020-09-21 Java IO流

作者: 偕_2bb8 | 来源:发表于2020-09-22 22:08 被阅读0次

转载自并发编程网 – ifeve.com本文链接地址:Java IO: 流

Java IO的用途汇总:
文件访问
网络访问
内存缓存访问
线程内部通信(管道)
缓冲
过滤
解析
读写文本 (Readers / Writers)
读写基本类型数据 (long, int etc.)
读写对象

1.流和数组的区别

流和数组不一样,不能通过索引读写数据。
在流中,你也不能像数组那样前后移动读取数据,除非使用RandomAccessFile 处理文件。
流仅仅只是一个连续的数据流。
流中的数据只能够顺序访问。
某些类似PushbackInputStream 流的实现允许你将数据重新推回到流中,以便重新读取。然而你只能把有限的数据推回流中,并且你不能像操作数组那样随意读取数据。

2.Java IO流的分类

字节流:通常以“stream”命名,比如InputStream和OutputStream。除了DataInputStreamDataOutputStream 还能够读写int, long, float和double类型的值以外,其他流在一个操作时间内只能读取或者写入一个原始字节。

字符流:通常以“Reader”或者“Writer”命名。字符流能够读写字符(比如Latin1或者Unicode字符【1个字符占2个字节】)。可以浏览Java Readers and Writers获取更多关于字符流输入输出的信息。

节点流:程序用于直接操作目标设备所对应的类叫节点流。比如FileInputStream;

处理流:程序通过一个间接流类去调用节点流类,以达到更加灵活方便地读写各种类型的数据,这个间接流类就是处理流。比如BufferedInputStream;
https://blog.csdn.net/jingzi123456789/article/details/72123937

输入流的基类InputStream
输出流的基类OutputStream
组合流BufferedIntputStream/BufferedOutputStream(提供缓存区)


BufferedIntputStream/BufferedOutputStream 默认大小为8*1024B(8KB),为了更好地使用内置缓冲区的磁盘,同样建议把缓冲区大小设置成1024的整数倍。
---------------------------------------------------------------------------------------------------------------DataInputStream/DataOutputStream 读取/写入Java基本类型数据

                                      Java IO类概述表
image.png
BIO,NIO,AIO

BIO:同步阻塞I/O模式,数据的读取写入必须阻塞在一个线程内等待其完成。
NIO:同步非阻塞的I/O模型,在Java 1.4 中引入了NIO框架,对应 java.nio 包,提供了 Channel , Selector,Buffer等抽象。
AIO (Asynchronous I/O):异步非阻塞的IO模型。异步 IO 是基于事件和回调机制实现的,也就是应用操作之后会直接返回,不会堵塞在那里,当后台处理完成,操作系统会通知相应的线程进行后续的操作。

相关文章

  • Java之IO流详解

    title: Java之IO流详解tags: Java IO流categories: Java IO流 大多数应用...

  • 2020-09-21 Java IO流

    转载自并发编程网 – ifeve.com[https://ifeve.com/]本文链接地址:Java IO: 流...

  • 从0开始复习java(9)--IO

    Java的io通过java.io包下的类和接口支持。主要有输入、输出流,又分为字节流和字符流。Java的io流使用...

  • java IO入门笔记

    1.java IO流的概念,分类,类图 1.1. java IO 流的概念 java的io是实现输入和输出的基础,...

  • Java IO详解

    1 Java IO流的概念,分类 1.1 Java IO流的概念 java的IO是实现输入和输出的基础,可以方便的...

  • Java的IO和NIO

    Java的IO和NIO 一、Java的IO Java的IO功能在java.io包下,包括输入、输出两种IO流,每种...

  • java io 流

    java io 流 io 流总览 io 流主要提供四个接口 InputStream: 输入字节流 OutputSt...

  • 28、说说Java 中 IO 流

    说说Java 中 IO 流 Java 中 IO 流分为几种? 1、按照流的流向分,可以分为输入流和输出...

  • java IO流

    java IO流 java流操作的类和接口 java流类图结构 IO流的定义 流是一组有顺序的,有起点和终点的字节...

  • 05-Java中的IO与NIO面试题(15题)

    1、Java 中 IO 流? Java 中 IO 流分为几种?按照流的流向分,可以分为输入流和输出流;按照操作单元...

网友评论

      本文标题:2020-09-21 Java IO流

      本文链接:https://www.haomeiwen.com/subject/kmnvyktx.html