今天我们来梳理一下Java视频入门基础学习之流概念。本文将从流的定义、分类、标准的输入/输出流以及I/O流按类型分类四部分来介绍,让大家全面系统的了解流概念。感兴趣的同学就赶紧看下去吧!
一、Java流定义。
Java中的流是一个很抽象的概念,当程序需要读取一个文件时,就会开启一个通向数据源(被读取的文件)的流。流是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以“流”的方式进行。设备可以是文件,网络,内存等。
二、Java中流的分类
1、字节流(ByteStream)
InputStream(抽象类)与OutputStream(抽象类)所有字节流的顶级父类,这类流以字节(Byte)为基本处理单位
2、字符流(CharacterStream)
Reader(抽象类)与Writer(抽象类)所有字符流的顶级父类,这类流以16位的Unicode表示的字符基本单位。
三、标准的输入/输出流
1、标准的输出流system.out
向标准输出设备输出数据,其数据类型为PrintStream
常用方法:voidprint(参数)和voidprintln(参数)
system.out通过调用println方法输出参数并换行,调用print方法输出不换行
2、标准的输入流system.in
向标准的输入设备输入数据(一般为键盘),其数据类型为InputStream
常用方法:intread()返回ASCII码,返回值为-1则没有读取任何字节,读取工作结束
intread(byteb[]):读入多个字节到缓冲区b中,返回值是读入的字节数
packagecn.itcase.stream;
importjava.io.IOException;
publicclassDemo{
//从键盘输入输入什么打印什么
publicstaticvoidmain(String[]args){
intb;
try{
System.out.println("pleaseInput");
while((b=System.in.read())!=-1){
System.out.println((char)b);
}
}catch(IOExceptione){
System.out.println(e.toString());
}
}
}
3、标准错误流
System.err标准错误流,其数据类型为PrintStream。
四、I/O流按类型分类
1、Memory
从/向内存数组读写数据:CharArrayReader,CharArrayWriter,ByteArrayInputStream,ByteArrayOutputStream
从/向内存字符串读写数据:StringReader,StringWriter,StringBufferInputStream,StringBufferOutStream
2、Pipe管道
实现管道的输入和输出(进程间通信):PipedReader,PipeWriter,PipedInputStream,PipedOutputStream
3、File文件流
对文件进行读写操作:FileReader,FileWriter,FileInputStream,FileOutputStream
4、ObjectSerialization
对象输入,输出:ObjectInputStream,ObjectOutputStream
5、DataConversion数据流
按基本数据类型读,写(处理的数据是Java的基本数据类型):DataInputStream,DateOutputStream
6、Printing
包含方便的打印方法:PrintWriter,PrintStream
7、Buffering缓冲区
在读入,写出时对数据进行缓存,以减少I/O的次数:BufferedReader,BufferedWriter,BufferedIputStream,BuffereOutputStream
8、Filtering滤流
在数据进行读写时进行过滤:FilterReader,FilterWriter,FilerInputStream,FilterOutputStream
9、Concatenation
合并输入并把多个输入流连成一个输入流:SequenceInputStream
10、Conunting
在读入数据时对行记数:LineNumberReader,LineNumberInputStream
11、PeekingAhead
通过通过缓存机制进行预读:PushBackReader,PushBackInputStream
12、ConvertingbetweenBytesandCharacters
按照一定的编码/解码标准将字节流转换为字符流,或反向转换(Stream到Reader,Writer的转换类):InputStreamReader,OutputStreamWriter
以上就是天津卓众教育java培训机构的小编针对“Java视频入门基础学习之流概念”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
Java零基础学习视频
2020Java零基础教程:http://www.bjpowernode.com/javavideo/110.html
Java入门教程 Java基础学习