使用后,不分配变量的PrintWriter会关闭吗



Is

new PrintWriter(ExampleStream).print("Just Something");

与相同

PrintWriter pw = new PrintWriter(ExampleStream);
pw.print("Just Something");
pw.close();

那么PrintWriter会关闭吗?

否。

从技术上讲,Java中的"匿名"一词指的是创建一个没有名称的本地类。您所做的只是创建一个类的实例,而不将其分配给变量。

不,它们不是同一种情况

在您的第二个例子中,问题PrintWritter将在执行pw.close((的那一刻立即关闭。而

在你问题的第一种情况下,版画作者不会立即关闭。调用-->new PrintWriter(ExampleStream(.print((之后由于您没有对其对象的任何引用,因此您不能再次使用同一对象,这意味着它有资格被垃圾收集器删除。由于我们无法确定垃圾收集器何时运行,所以无法确定何时删除此对象。需要记住的一件更重要的事情是,即使这个对象可能会被垃圾收集器删除,但这个过程与pw.close((

不同

相关内容

  • 没有找到相关文章

最新更新