微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如果没有System.out,在控制台上打印怎么办?

我最近在接受采访时遇到了一个问题.问题陈述为 – >假设您无法访问Jdk API中的System类,也无法使用ECHO,您在JRE 5环境中,如何在控制台上打印任何内容?问题真正开始于 – 为什么 Java给了我们PrintStream对象System.out ??为什么它是最终的?没有任何其他方法可以在控制台上打印任何东西.

解决方法

如果需要,可以绕过System对象. System.out做了很多额外的事情(例如处理unicode),所以如果你真的只想要原始输出性能,你实际上甚至可能绕过它.
import java.io.*;

public class PrintOutTest {
  public static void main(String args[]) throws IOException {
    BufferedWriter out = new BufferedWriter(new OutputStreamWriter(new
      FileOutputStream(FileDescriptor.out),"ASCII"),512);
    out.write("test string");
    out.write('\n');
    out.flush();
  }
}

这已在here中进一步阐述.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐