Jika anda pernah menggunakan Pengimbas Java, anda tahu adalah penting untuk menutupnya untuk mengelakkan kebocoran sumber—terutamanya apabila membaca daripada fail. Tetapi apabila bercakap mengenai System.in, ia berbeza.
Anda biasanya tidak mahu menutup System.in kerana berbuat demikian akan menghentikan sebarang input masa hadapan. Ini boleh menimbulkan isu jika bahagian lain program anda masih memerlukan input pengguna.
Sumber cuba-dengan-sumber Java menjadikannya mudah. Ia menutup Pengimbas secara automatik tanpa menutup System.in, membolehkan anda membaca input pengguna dengan selamat.
Sesetengah IDE (seperti Eclipse atau IntelliJ) mungkin menandakan kemungkinan kebocoran sumber dengan Pengimbas, memperlakukan semua kejadian sama. Ini boleh mengelirukan, terutamanya apabila menggunakan System.in, tetapi anda boleh mengabaikan amaran ini dengan yakin.
Gunakan cuba-dengan-sumber untuk memastikan Pengimbas ditutup dengan betul sambil memastikan System.in terbuka.
Elakkan menutup System.in secara manual; biarkan JVM mengendalikannya.
Contoh Kod:
try (Scanner objName = new Scanner(System.in)) { System.out.println("What's your name?"); String userName = objName.nextLine(); System.out.println("Hello, " + userName + "!"); }
Atas ialah kandungan terperinci Mengendalikan Kebocoran Sumber dengan Pengimbas dan System.in dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!