Adakah kita perlu menutup InputStream di Java?
Adakah kita perlu menutup InputStream di Java?

Video: Adakah kita perlu menutup InputStream di Java?

Video: Adakah kita perlu menutup InputStream di Java?
Video: #08 - Scanner VS BufferedReader [Java Dasar] 2024, Mungkin
Anonim

2 Jawapan. awak perlu tutup yang masukan Aliran , kerana aliran yang dikembalikan melalui kaedah yang anda nyatakan sebenarnya FileInputStream atau beberapa subkelas lain InputStream yang memegang pemegang untuk fail. Jika awak buat bukan dekat aliran ini anda mempunyai kebocoran sumber.

Dengan mengambil kira perkara ini, adakah perlu untuk menutup InputStream di Java?

Tetapi aliran input s tidak pernah ditutup. Ini adalah kendiri Jawa program dan terdapat beberapa program tersebut di mana InputStream tidak pernah ditutup. Biasanya fail akan ditutup apabila fail InputStream objek adalah sampah yang dikumpul atau apabila program tamat. Biasanya bukan idea yang baik untuk membiarkan perkara terbuka seperti ini.

Juga, mengapa kita harus menutup aliran di Jawa? Ia penting untuk menutup aliran , untuk mengeluarkan deskriptor fail yang dipegang oleh kelas ini, sebagai sumber terhadnya dan digunakan dalam kedua-dua sambungan soket dan pengendalian fail. Kebocoran sumber yang serius boleh mengakibatkan pengecualian deskriptor fail juga.

Kedua, adakah saya perlu menutup FileInputStream?

Ya anda perlu tutup aliran input jika anda mahu sumber sistem anda dikeluarkan semula. FileInputStream . dekat () adalah apa yang anda perlukan . awak pun perlu tutup (), atau tamatkan program anda.

Adakah saya perlu menutup ByteArrayInputStream?

4 Jawapan. Anda tidak perlu tutup ByteArrayInputStream , apabila ia tidak dirujuk oleh mana-mana pembolehubah, pengumpul sampah akan mengeluarkan aliran dan beberapa bait (tentunya dengan mengandaikan ia tidak dirujuk di tempat lain).

Disyorkan: