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

📄 tij0109.html

📁 学习java的经典书籍
💻 HTML
📖 第 1 页 / 共 2 页
字号:
just adds line numbering, so you’ll probably attach an interface object.
</FONT><P></DIV>
</TD>
</TR>
<A NAME="Index1037"></A><A NAME="Index1038"></A><TR VALIGN="TOP">
<TD WIDTH=76 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>Pushback-InputStream</B></FONT><P></DIV>
</TD>
<TD WIDTH=121 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Has
a one byte push-back buffer so that you can push back the last character read.
</FONT><P></DIV>
</TD>
<TD WIDTH=144 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>InputStream</B></FONT><P></DIV>
</TD>
</TR>
<TR VALIGN="TOP">
<TD WIDTH=144 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Generally
used in the scanner for a compiler and probably included because the Java
compiler needed it. You probably won&#8217;t use this.
</FONT><P></DIV>
</TD>
</TR>
<a name="_Toc375545388"></a><a name="_Toc408018615"></a></TABLE></DIV>
<A NAME="Heading309"></A><H3 ALIGN=LEFT>
Writing
to an OutputStream 
<P>with
FilterOutputStream
</H3>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">The
complement to 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>DataInputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
is 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>DataOutputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">,
which formats each of the primitive types and 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>String</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
objects onto a stream in such a way that any 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>DataInputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">,
on any machine, can read them. All the methods start with &#8220;write,&#8221;
such as 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>writeByte(&#160;)</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">,
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>writeFloat(&#160;)</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">,
etc.
</FONT><P></DIV><DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">If
you want to do true formatted output, for example, to the console, use a 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>PrintStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">.
This is the endpoint that allows you to print all of the primitive data types
and 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>String</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
objects in a viewable format as opposed to 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>DataOutputStream,</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
whose goal is to put them on a stream in a way that 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>DataInputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
can portably reconstruct them. The 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>System.out</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
static object is a 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>PrintStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">.</FONT><P></DIV><DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">The
two important methods in 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>PrintStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
are 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>print(&#160;)</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
and 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>println(&#160;)</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">,
which are overloaded to print out all the various types. The difference between 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>print(&#160;)</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
and 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>println(&#160;)</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
is that the latter adds a newline when it&#8217;s done.
</FONT><P></DIV><DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>BufferedOutputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
is a modifier and tells the stream to use buffering so you don&#8217;t get a
physical write every time you write to the stream. You&#8217;ll probably always
want to use this with files, and possibly console IO.
</FONT><P></DIV><DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>Table
10-4. Types of FilterOutputStream
</B></FONT><P></DIV>
<DIV ALIGN=LEFT><TABLE BORDER>
<COLGROUP>
      <COL width="85">
      <COL width="121">
      <COL width="121">
</COLGROUP>
<TR VALIGN="TOP">
<TH WIDTH=85 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Class</FONT><P></DIV>
</TH>
<TH WIDTH=121 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Function</FONT><P></DIV>
</TH>
<TH WIDTH=121 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Constructor
Arguments 
</FONT><P></DIV>
</TH>
</TR>
<TR VALIGN="TOP">
<TH WIDTH=121 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">How
to use it
</FONT><P></DIV>
</TH>
</TR>
<A NAME="Index1039"></A><A NAME="Index1040"></A><TR VALIGN="TOP">
<TD WIDTH=85 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>Data-OutputStream</B></FONT><P></DIV>
</TD>
<TD WIDTH=121 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Used
in concert with 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>DataInputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
so you can write primitives (int, char, long, etc.) to a stream in a portable
fashion.
</FONT><P></DIV>
</TD>
<TD WIDTH=121 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>OutputStream</B></FONT><P></DIV>
</TD>
</TR>
<TR VALIGN="TOP">
<TD WIDTH=121 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Contains
full interface to allow you to write primitive types.
</FONT><P></DIV>
</TD>
</TR>
<A NAME="Index1041"></A><A NAME="Index1042"></A><TR VALIGN="TOP">
<TD WIDTH=85 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>PrintStream</B></FONT><P></DIV>
</TD>
<TD WIDTH=121 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">For
producing formatted output. While 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>DataOutputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
handles the 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><I>storage</I></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
of data, 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>PrintStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
handles 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><I>display</I></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">.</FONT><P></DIV>
</TD>
<TD WIDTH=121 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>OutputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">,
with optional boolean indicating that the buffer is flushed with every newline.
</FONT><P></DIV>
</TD>
</TR>
<TR VALIGN="TOP">
<TD WIDTH=121 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Should
be the &#8220;final&#8221; wrapping for your 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>OutputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
object. You&#8217;ll probably use this a lot.
</FONT><P></DIV>
</TD>
</TR>
<A NAME="Index1043"></A><A NAME="Index1044"></A><TR VALIGN="TOP">
<TD WIDTH=85 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>Buffered-OutputStream</B></FONT><P></DIV>
</TD>
<TD WIDTH=121 COLSPAN=1 ROWSPAN=2 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">Use
this to prevent a physical write every time you send a piece of data.
You&#8217;re saying &#8220;Use a buffer.&#8221; You can call 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>flush(&#160;)</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">
to flush the buffer.
</FONT><P></DIV>
</TD>
<TD WIDTH=121 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><B>OutputStream</B></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">,
with optional buffer size.
</FONT><P></DIV>
</TD>
</TR>
<TR VALIGN="TOP">
<TD WIDTH=121 COLSPAN=1 ROWSPAN=1 VALIGN=TOP>
<DIV ALIGN=LEFT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">This
doesn&#8217;t provide an interface 
</FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black"><I>per
se
</I></FONT><FONT FACE="Carmina Md BT" SIZE=3 COLOR="Black">,
just a requirement that a buffer is used. Attach an interface object.
</FONT><P></DIV>
</TD>
</TR>
<a name="_Toc375545389"></a><a name="_Toc408018616"></a></TABLE></DIV>
<HR><DIV ALIGN=LEFT><A NAME="fn47" HREF="#fnB47">[47]</A><FONT FACE="Carmina Md BT" SIZE=2 COLOR="Black">
In 
</FONT><FONT FACE="Carmina Md BT" SIZE=2 COLOR="Black"><I>Design
Patterns
</I></FONT><FONT FACE="Carmina Md BT" SIZE=2 COLOR="Black">,
Erich Gamma 
</FONT><FONT FACE="Carmina Md BT" SIZE=2 COLOR="Black"><I>et
al.
</I></FONT><FONT FACE="Carmina Md BT" SIZE=2 COLOR="Black">,
Addison-Wesley 1995. Described later in this book.
</FONT><P></DIV>


<div align="right">
<a href="tij_c.html">Contents</a> | <a href="tij0108.html">Prev</a> | <a href="tij0110.html">Next</a>
</div>
</body></html>

⌨️ 快捷键说明

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