15

StringWriter 有一个刷新功能。刷新字符串缓冲区是什么意思?

4

2 回答 2

26

它必须有一个实现,flush()因为在它的超类Writer中这是一个抽象方法,而StringWriter不是一个抽象类。但是,如果您查看JDK 安装目录StringWriter.flush()中的文件中的源代码,您会看到:src.zip

/**
 * Flush the stream.
 */
public void flush() {
}

换句话说,它什么都不做。(当然还有其他子类Writerwhereflush()确实有用)。

实现此方法的人可能已经证明它没有做任何事情,但他们没有。

于 2012-09-20T08:10:33.403 回答
2

通常,刷新会强制缓冲区将其内容写入目标,例如将字节写入硬盘上的文件。

于 2012-09-20T08:09:50.197 回答