【问题标题】:PrintWriter constructorsPrintWriter 构造函数
【发布时间】:2020-09-21 19:52:40
【问题描述】:

我在下面列出了 PrintWriter 类的 8 个构造函数。
PrintWriter(File file)PrintWriter(File file, String csn)PrintWriter(OutputStream out)PrintWriter(OutputStream out, boolean autoFlush), PrintWriter(String fileName), PrintWriter(String fileName, String csn), PrintWriter(Writer out), PrintWriter(Writer out, boolean autoFlush).

问题:

  1. 如果没有使用 PrintStream 的 PrintWriter 构造器,那我们怎么能像我在下面写的那样写一个语句?

  2. 如果没有使用 BufferedWriter 的 PrintWriter 构造器,那我们怎么能写出我在下面写的语句呢?

          PrintWriter writer1 = new PrintWriter(System.out);
    
          PrintWriter writer2;
          writer2 = new PrintWriter(new BufferedWriter(new FileWriter(new File(outdir, reportFileName))));
    

提前致谢。

【问题讨论】:

  • 研究什么是多态
  • PrintStream 是 OutputStream 而 BufferedWriter 是 Writer。
  • 不是多态,而是看PrintWriter的层次结构。它扩展了什么以及结构中还有哪些其他类。 PrintWriter 扩展 Writer.

标签: java printwriter


【解决方案1】:

这是可能的,因为PrintStream 继承自 FilterOutputStream,而后者又继承自 OutputStream。

BufferedWriter 继承自 Writer。

Writer 和 OutputStream 是PrintWriter 构造函数中的可能变量。我们在这里谈论的大话题是继承。为此有一个good post

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-23
    • 2019-01-31
    • 2012-06-30
    • 1970-01-01
    • 2013-10-13
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多