Java 暂时禁用System.out

Java 暂时禁用System.out,java,constructor,io,Java,Constructor,Io,我正在尝试实现一个临时禁用流氓库输出的方法。然而,我的问题是,我得到的是: The constructor PrintStream(new OutputStream(){}) is undefined 使用此代码 PrintStream out = System.out; System.setOut(new PrintStream(new OutputStream() { public void write(int b) throw

我正在尝试实现一个临时禁用流氓库输出的方法。然而,我的问题是,我得到的是:

The constructor PrintStream(new OutputStream(){}) is undefined 
使用此代码

 PrintStream out = System.out;
            System.setOut(new PrintStream(new OutputStream() {
                 public void write(int b) throws IOException {}
            }));

这个类怎么可能没有构造函数呢?谢谢

我实际上正在将所有system.out和system转发到底层记录器

private static void redirectStdOutErrToSl4j() {
    System.setOut(new PrintStream(System.out) {
        @Override
        public void print(final String s) {
            logger.info(s);
        }
    });
    System.setErr(new PrintStream(System.err) {
        @Override
        public void print(final String s) {
            logger.error(s);
        }
    });
}

只需在静态块上调用该方法。

在我的系统上编译得很好。尝试在
public void write()上面添加
@Override
。这就成功了,谢谢