您的位置:首页 > 编程语言 > Java开发

java流概述

2017-07-07 11:16 92 查看
1:流是什么呢?

  流是一个很形象的概念,简单来说呢,大部分的应用程序都需要接受某种形式的数据输入,并产生某种形式的数据输出。当需要读入数据的时候,就会开启一个通向数据源的流,同样当需要写出数据的时候,也会开启一个通向目的地的流。而这种数据源可以是内存,文件或网络连接。数据就像是会流动一样,从一个地方流向另一个地方。可知,流就是在管道中的数据。为了对数据进行输入输出操作,java把不同的输入输出源(键盘,文件,网络连接等)抽象表示为流。

  

2:流的分类。

输入流和输出流

按照流向来分,可以分为输入流和输出流

  输入流:只能从中读取数据,而不能向其写入数据;基本上是从磁盘文件到系统内存。

  输出流:只能向其写入数据,而不能从中读取数据;基本上是从系统内存到磁盘文件。

Java的输入流主要由InputStream和Reader作为基类,而输出流则主要由OutputStream和Writer作为基类。他们都是一些抽象基类,能直接创建实例对象。

字节流与字符流

按照处理数据的单位不同分,可以分为字节流与字符流

  字节流:字节流操作的数据单元是8位的字节(1byte=8bit)。

  字符流:字符流操作的数据单元是16位的字符(1char = 2byte = 16bit)。

字节流主要由InputStream和OutStream作为基类,字符流主要由Reader和Writer作为基类。

节点流和处理流

按照功能的不同分,分节点流和处理流

  节点流:节点流是直接从一个源读写数据的流(这个流没有经过包装和修饰),

  处理流:处理流是在对节点流封装的基础上的 一种流,

FileInputStream是一个节点流,可以直接从文件读取数据,但是BufferedInputStream可以包装 FileInputStream,使得其有缓冲功能。

3:流的结构

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息