⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 tij314.htm

📁 这也是我们java老师给我们的thinking in java的一些资料
💻 HTM
📖 第 1 页 / 共 5 页
字号:
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>FileInputStream</b><br></p>
</td>
<td width="239.999940" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>FileReader</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>FileOutputStream</b><br></p>
</td>
<td width="239.999940" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>FileWriter</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>StringBufferInputStream</b><br></p>
</td>
<td width="239.999940" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>StringReader</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table">(no corresponding class)<br></p>
</td>
<td width="239.999940" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>StringWriter</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>ByteArrayInputStream</b><br></p>
</td>
<td width="239.999940" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>CharArrayReader</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>ByteArrayOutputStream</b><br></p>
</td>
<td width="239.999940" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>CharArrayWriter</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>PipedInputStream</b><br></p>
</td>
<td width="239.999940" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>PipedReader</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>PipedOutputStream</b><br></p>
</td>
<td width="239.999940" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>PipedWriter</b><br></p>
</td>
</tr>
</table></div>
<p class="TableFollower">In general, you&#146;ll find that the interfaces for the two different hierarchies are similar if not identical.<br></p>
<h3>
<a name="_Toc24775795"></a><a name="Heading14251"></a>Modifying stream
behavior</h3>
<p>For <b>InputStream</b>s and <b>OutputStream</b>s, streams were adapted for particular needs using &#147;decorator&#148; subclasses of <b>FilterInputStream</b> and <b>FilterOutputStream.</b> The <b>Reader</b> and <b>Writer</b> class hierarchies continue the use of this idea&#151;but not exactly. <font size="-2"><a href="mailto:TIJ3@MindView.net?Subject=[TIJ3]Chap11_1663" title="Send BackTalk Comment">Feedback</a></font><br></p>
<p>In the following table, the correspondence is a rougher approximation than in the previous table. The difference is because of the class organization; although <b>BufferedOutputStream</b> is a subclass of <b>FilterOutputStream</b>, <b>BufferedWriter</b> is <i>not</i> a subclass of <b>FilterWriter</b> (which, even though it is <b>abstract</b>, has no subclasses and so appears to have been put in either as a placeholder or simply so you wouldn&#146;t wonder where it was). However, the interfaces to the classes are quite a close match. <br></p>
<div align="center" style="position:relative; left: 0"><table border="1">
<tr valign="top">
<th width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><a name="Index1285"></a><a name="Index1286"></a><a name="Index1287"></a><a name="Index1288"></a><a name="Index1289"></a><a name="Index1290"></a><a name="Index1291"></a><a name="Index1292"></a><a name="Index1293"></a><a name="Index1294"></a><a name="Index1295"></a><a name="Index1296"></a><a name="Index1297"></a><a name="Index1298"></a><a name="Index1299"></a><a name="Index1300"></a><a name="Index1301"></a><a name="Index1302"></a><a name="Index1303"></a><a name="Index1304"></a><b>Filters:</b><br><b>Java 1.0 class</b><br></p>
</th>
<th width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>Corresponding Java 1.1 class</b><br></p>
</th>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>FilterInputStream</b><br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>FilterReader</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>FilterOutputStream</b><br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>FilterWriter </b>(abstract class with no subclasses)<br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>BufferedInputStream</b><br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>BufferedReader</b><br>(also has<b> readLine(&#160;)</b>)<br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>BufferedOutputStream</b><br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>BufferedWriter</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>DataInputStream</b><br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table">Use<b> DataInputStream</b><br>(except when you need to use<b> readLine(&#160;)</b>,<b> </b>when you should use a<b> BufferedReader</b>)<br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>PrintStream</b><br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>PrintWriter</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>LineNumberInputStream</b><br>(deprecated)<br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>LineNumberReader</b><br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>StreamTokenizer</b><br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>StreamTokenizer</b><br>(use constructor that takes a <b>Reader</b> instead)<br></p>
</td>
</tr>
<tr valign="top">
<td width="215.999946" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>PushBackInputStream</b><br></p>
</td>
<td width="251.999937" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>PushBackReader</b><br></p>
</td>
</tr>
</table></div>
<p class="TableFollower">There&#146;s one direction that&#146;s quite clear: Whenever you want to use <b>readLine(&#160;)</b>, you shouldn&#146;t do it with a <b>DataInputStream</b> (this is met with a deprecation message at compile time), but instead use a <b>BufferedReader</b>. Other than this, <b>DataInputStream</b> is still a &#147;preferred&#148; member of the I/O library.<br></p>
<p>To make the transition to using a <b>PrintWriter</b> easier, it has constructors that take any <b>OutputStream</b> object as well as <b>Writer</b> objects. However, <b>PrintWriter</b> has no more support for formatting than <b>PrintStream</b> does; the interfaces are virtually the same. <font size="-2"><a href="mailto:TIJ3@MindView.net?Subject=[TIJ3]Chap11_1664" title="Send BackTalk Comment">Feedback</a></font><br></p>
<p>The <b>PrintWriter</b> constructor also has an option to perform automatic flushing, which happens after every <b>println(&#160;)</b> if the constructor flag is set. <font size="-2"><a href="mailto:TIJ3@MindView.net?Subject=[TIJ3]Chap11_1665" title="Send BackTalk Comment">Feedback</a></font><br></p>
<h3>
<a name="_Toc24775796"></a><a name="Heading14277"></a>Unchanged Classes</h3>
<p>Some classes were left unchanged between Java 1.0 and Java 1.1: <br></p>
<div align="center" style="position:relative; left: 0"><table border="1">
<tr valign="top">
<th width="221.333278" colspan="1" rowspan="1" valign="top">
<p class="Table"><a name="Index1305"></a><a name="Index1306"></a><a name="Index1307"></a><a name="Index1308"></a><a name="Index1309"></a><a name="Index1310"></a><a name="Index1311"></a><a name="Index1312"></a>Java 1.0 classes without corresponding Java 1.1 classes<br></p>
</th>
</tr>
<tr valign="top">
<td width="221.333278" colspan="1" rowspan="1" valign="top">
<p class="Table"><b>Dat

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -