如果没有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中进一步阐述.

相关文章

最近看了一下学习资料,感觉进制转换其实还是挺有意思的,尤...
/*HashSet 基本操作 * --set:元素是无序的,存入和取出顺序不...
/*list 基本操作 * * List a=new List(); * 增 * a.add(inde...
/* * 内部类 * */ 1 class OutClass{ 2 //定义外部类的成员变...
集合的操作Iterator、Collection、Set和HashSet关系Iterator...
接口中常量的修饰关键字:public,static,final(常量)函数...