Java Scanner를 사용해 본 적이 있다면 특히 파일을 읽을 때 리소스 누출을 방지하기 위해 스캐너를 닫는 것이 중요하다는 것을 알고 계실 것입니다. 하지만 System.in의 경우에는 다릅니다.
일반적으로 System.in을 닫으면 향후 입력이 중단되므로 닫지 않는 것이 좋습니다. 프로그램의 다른 부분에 여전히 사용자 입력이 필요한 경우 문제가 발생할 수 있습니다.
Java의 리소스 사용 시도를 사용하면 쉬워집니다. System.in을 닫지 않고 스캐너를 자동으로 닫아 사용자 입력을 안전하게 읽을 수 있습니다.
일부 IDE(예: Eclipse 또는 IntelliJ)에서는 Scanner를 통해 잠재적인 리소스 누수를 표시하여 모든 인스턴스를 동일하게 처리할 수 있습니다. 이는 특히 System.in을 사용할 때 오해의 소지가 있을 수 있지만 이러한 경고는 무시해도 됩니다.
try-with-resources를 사용하여 System.in을 열어둔 상태에서 스캐너가 제대로 닫히는지 확인하세요.
System.in을 수동으로 닫지 마십시오. JVM이 처리하도록 하세요.
예제 코드:
try (Scanner objName = new Scanner(System.in)) { System.out.println("What's your name?"); String userName = objName.nextLine(); System.out.println("Hello, " + userName + "!"); }
위 내용은 Java에서 Scanner 및 System.in을 사용하여 리소스 누수 처리의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!