两个特殊的流对象(System.in和System.out)及打印流

一、System.in和System.out

System是一个类java.lang.System,属于java.lang包,定义如下:


public final class System extends Object//此类为最终类,不能被继承

in和out为System类的属性:

public static final InputStream in//静态方法,用类名称直接调用,返回InputStream类,也就是说可以为InputStream实例化
public static final PrintStream out//静态方法,用类名称直接调用,返回PrintStream类,也就是说可以为OutputStream实例化

System.in   是 InputStream类型,字节流,程序使用它可读取键盘输入的数据;

System.out  是 PrintStream类型(是OutputStream的子类),字节流,程序使用它可将数据输出到显示屏上。


二、使用——实例化父类

1.  PrintStream(父类是

OutputStream——字节流
)

public class PrintStream
extends FilterOutputStreamimplements Appendable, Closeable


构造方法很多:

PrintStream(File file)
          创建具有指定文件且不带自动行刷新的新打印流。
PrintStream(File file,String csn)
          创建具有指定文件名称和字符集且不带自动行刷新的新打印流。
PrintStream(OutputStream out)
          创建新的打印流。
PrintStream(OutputStream out, boolean autoFlush)
          创建新的打印流。
PrintStream(OutputStream out, boolean autoFlush,String encoding)
          创建新的打印流。
PrintStream(String fileName)
          创建具有指定文件名称且不带自动行刷新的新打印流。
PrintStream(String fileName,String csn)
          创建具有指定文件名称和字符集且不带自动行刷新的新打印流。
其中,
public PrintStream(OutputStream out)这个构造方法过传入一个OutputStream类型的对象,作用是向参数out打印值和对象的输出流。

示例:
PrintStream out = new PrintStream(System.out);//向屏幕打印
String str = "abcddd";
out.print(str);

2.  PrintWriter(父类是
Writer——字符流
)
public class PrintWriter
extends Writer
构造方法摘要
PrintWriter(File file)
          使用指定文件创建不具有自动行刷新的新 PrintWriter。
PrintWriter(File file, String csn)
          创建具有指定文件和字符集且不带自动刷行新的新 PrintWriter。
PrintWriter(OutputStream out)
          根据现有的 OutputStream 创建不带自动行刷新的新 PrintWriter。
PrintWriter(OutputStream out, boolean autoFlush)
          通过现有的 OutputStream 创建新的 PrintWriter。
PrintWriter(String fileName)
          创建具有指定文件名称且不带自动行刷新的新 PrintWriter。
PrintWriter(String fileName, String csn)
          创建具有指定文件名称和字符集且不带自动行刷新的新 PrintWriter。
PrintWriter(Writer out)
          创建不带自动行刷新的新 PrintWriter。
PrintWriter(Writer out, boolean autoFlush)
          创建新 PrintWriter。
其中,
public PrintWriter(OutputStream out)   这个构造方法过传入一个OutputStream类型的对象,作用是向参数out打印值和对象的输出流。
示例:
PrintWriter out = new PrintWriter(System.out);//向屏幕打印
String str = "abcddd";
out.print(str);
out.close();//字符流用到缓冲区,若不关闭,则无法把内容写入目标位置,也可使用out.flush()方法

阅读更多
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页