0

例如,如果我有

Scanner scan = new Scanner(System.in);
scan.close();
scan = new scanner(new File("file.txt"));

那会比

Scanner scan = new Scanner(System.in);
scan = new scanner(new File("file.txt"));

或者它本质上是相同的运行时并使用相同的资源?

谢谢

4

1 回答 1

1

当你这样做时,scan.close()你正在释放底层资源。不调用函数会更快(即使它是空操作,也有一些时间与执行调用和返回相关),但可能会导致资源被您的程序保持打开(并可能锁定)直到您的程序退出。

于 2013-09-30T19:48:03.837 回答