📄 java07_01.htm
字号:
<html>
<head>
<meta http-equiv="Content-Language" content="zh-cn">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 4.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<title>Java程序设计</title>
</head>
<body background="Bg.gif">
<p align="center"><font size="5"><b>§7.1 JAVA的输入和输出类库</b></font></p>
<p align="left"> Java的输入输出功能必须借助输入和输出类库java.io包来实现,这个包中的大多数类是用于完成流式输入和输出的类。</p>
<p align="left"><b>流的概念</b></p>
<p align="left">
流是指在计算机的输入和输出之间运动的数据序列。输入流代表从外设流入到计算机内存的数据系列,输出流代表从计算机内存流向外设的数据系列。</p>
<p align="left">
流式输入输出是一种很常见的输入和输出方式,它的最大特点是数据的获取和发送是沿着数据系列顺序进行,每一个数据都必须等待排在它前面的数据处理完成后才能被处理,每次读写操作都是序列中未处理的数据中的一个,而不能随意选择输入和输出的位置。</p>
<p align="left">
流中的数据既可以是原始的二进制数据,也可以是经过编码处理的某种特定格式的数据。</p>
<p align="left">
根据数据类型的不同,流分为两类:一种是字节流(Byte流),一次读写8位二进制数;一种是字符流(Character流,一次读写16位二进制数。</p>
<p align="left"> 输入和输出类主要在Java.io中定义,该包中的类层次如下图所示:</p>
<h2>Class Hierarchy</h2>
<ul>
<li type="circle">class java.lang.<b>Object</b>
<ul>
<li type="circle"><font size="4" color="#FF0000"><i>class java.io.<b>File</b></i></font>
(implements java.lang.Comparable, java.io.Serializable)
<li type="circle"><font size="4" color="#FF0000"><i>class java.io.<b>FileDescriptor</b></i></font>
<li type="circle"><font size="4" color="#FF0000"><i>class java.io.<b>InputStream</b></i></font>
<ul>
<li type="circle">class java.io.<b>ByteArrayInputStream</b>
<li type="circle">class java.io.<b>FileInputStream</b>
<li type="circle">class java.io.<b>FilterInputStream</b>
<ul>
<li type="circle">class java.io.<b>BufferedInputStream</b>
<li type="circle">class java.io.<b>DataInputStream</b> (implements
java.io.DataInput)
<li type="circle">class java.io.<b>LineNumberInputStream</b>
<li type="circle">class java.io.<b>PushbackInputStream</b></li>
</ul>
<li type="circle">class java.io.<b>ObjectInputStream</b> (implements
java.io.ObjectInput, java.io.ObjectStreamConstants)
<li type="circle">class java.io.<b>PipedInputStream</b>
<li type="circle">class java.io.<b>SequenceInputStream</b>
<li type="circle">class java.io.<b>StringBufferInputStream</b></li>
</ul>
<li type="circle">class java.io.<b>ObjectInputStream.GetField</b>
<li type="circle">class java.io.<b>ObjectOutputStream.PutField</b>
<li type="circle">class java.io.<b>ObjectStreamClass</b> (implements
java.io.Serializable)
<li type="circle">class java.io.<b>ObjectStreamField</b> (implements
java.lang.Comparable)
<li type="circle"><i><font size="4" color="#FF0000">class java.io.<b>OutputStream</b></font></i>
<ul>
<li type="circle">class java.io.<b>ByteArrayOutputStream</b>
<li type="circle">class java.io.<b>FileOutputStream</b>
<li type="circle">class java.io.<b>FilterOutputStream</b>
<ul>
<li type="circle">class java.io.<b>BufferedOutputStream</b>
<li type="circle">class java.io.<b>DataOutputStream</b>
(implements java.io.DataOutput)
<li type="circle">class java.io.<b>PrintStream</b></li>
</ul>
<li type="circle">class java.io.<b>ObjectOutputStream</b> (implements
java.io.ObjectOutput, java.io.ObjectStreamConstants)
<li type="circle">class java.io.<b>PipedOutputStream</b></li>
</ul>
<li type="circle">class java.security.<b>Permission</b> (implements
java.security.Guard, java.io.Serializable)
<ul>
<li type="circle">class java.security.<b>BasicPermission</b>
(implements java.io.Serializable)
<ul>
<li type="circle">class java.io.<b>SerializablePermission</b></li>
</ul>
<li type="circle">class java.io.<b>FilePermission</b> (implements
java.io.Serializable)</li>
</ul>
<li type="circle">class java.io.<b>RandomAccessFile</b> (implements
java.io.DataInput, java.io.DataOutput)
<li type="circle"><font size="4" color="#FF0000"><i>class java.io.<b>Reader</b></i></font>
<ul>
<li type="circle">class java.io.<b>BufferedReader</b>
<ul>
<li type="circle">class java.io.<b>LineNumberReader</b></li>
</ul>
<li type="circle">class java.io.<b>CharArrayReader</b>
<li type="circle">class java.io.<b>FilterReader</b>
<ul>
<li type="circle">class java.io.<b>PushbackReader</b></li>
</ul>
<li type="circle">class java.io.<b>InputStreamReader</b>
<ul>
<li type="circle">class java.io.<b>FileReader</b></li>
</ul>
<li type="circle">class java.io.<b>PipedReader</b>
<li type="circle">class java.io.<b>StringReader</b></li>
</ul>
<li type="circle">class java.io.<b>StreamTokenizer</b>
<li type="circle"><i><font size="4">class java.lang.<b>Throwable</b></font></i>
(implements java.io.Serializable)
<ul>
<li type="circle">class java.lang.<b>Exception</b>
<ul>
<li type="circle">
<p align="left">class java.io.<b>IOException</b>
<ul>
<li type="circle">class java.io.<b>CharConversionException</b>
<li type="circle">class java.io.<b>EOFException</b>
<li type="circle">class java.io.<b>FileNotFoundException</b>
<li type="circle">class java.io.<b>InterruptedIOException</b>
<li type="circle">class java.io.<b>ObjectStreamException</b>
<ul>
<li type="circle">class java.io.<b>InvalidClassException</b>
<li type="circle">class java.io.<b>InvalidObjectException</b>
<li type="circle">class java.io.<b>NotActiveException</b>
<li type="circle">class java.io.<b>NotSerializableException</b>
<li type="circle">class java.io.<b>OptionalDataException</b>
<li type="circle">class java.io.<b>StreamCorruptedException</b>
<li type="circle">class java.io.<b>WriteAbortedException</b></li>
</ul>
<li type="circle">class java.io.<b>SyncFailedException</b>
<li type="circle">class java.io.<b>UnsupportedEncodingException</b>
<li type="circle">class java.io.<b>UTFDataFormatException</b></li>
</ul>
</li>
</ul>
</li>
</ul>
<li type="circle"><font size="4" color="#FF0000"><i>class java.io.<b>Writer</b></i></font>
<ul>
<li type="circle">class java.io.<b>BufferedWriter</b>
<li type="circle">class java.io.<b>CharArrayWriter</b>
<li type="circle">class java.io.<b>FilterWriter</b>
<li type="circle">class java.io.<b>OutputStreamWriter</b>
<ul>
<li type="circle">class java.io.<b>FileWriter</b></li>
</ul>
<li type="circle">class java.io.<b>PipedWriter</b>
<li type="circle">class java.io.<b>PrintWriter</b>
<li type="circle">class java.io.<b>StringWriter</b></li>
</ul>
</li>
</ul>
</li>
</ul>
<p align="left"> </p>
<p align="left"><a href="index.htm">回目录</a> <a href="java06_07.htm">上一课</a>
<a href="java07_02.htm">下一课</a></p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -