Rumah  >  Artikel  >  Java  >  Menutup fail secara automatik

Menutup fail secara automatik

Patricia Arquette
Patricia Arquetteasal
2024-11-05 20:03:02481semak imbas
  • Sebelum JDK 7, fail telah ditutup secara eksplisit menggunakan kaedah close(), amalan biasa dalam kod sedia ada.

  • JDK 7 memperkenalkan cuba-dengan-sumber, yang mengautomasikan penutupan sumber seperti strim fail.

  • Kelebihan utama cuba-dengan-sumber adalah untuk mengelakkan kebocoran memori dan memastikan sumber dibebaskan apabila ia tidak diperlukan lagi.

  • Struktur asas cuba-dengan-sumber ialah:
    cuba (spesifikasi ciri) {
    // gunakan sumber
    }

  • Spesifikasi sumber mengisytiharkan dan memulakan sumber, yang ditutup secara automatik pada penghujung blok percubaan.

  • Tidak perlu memanggil close() secara eksplisit, kerana sumber diurus secara automatik.

  • Sumber cuba dengan sumber boleh termasuk klausa tangkapan dan akhirnya.

  • Hanya boleh digunakan dengan sumber yang melaksanakan antara muka AutoCloseable, yang termasuk kelas strim seperti FileInputStream dan FileOutputStream.

  • Contoh pelaksanaan cuba-dengan-sumber ialah versi diubah suai program ShowFile.

Fechando automaticamente um arquivo

  • Dalam program, fail dibuka menggunakan pernyataan cuba-dengan-sumber, di mana FileInputStream dipanggil sirip diisytiharkan.

  • Pembolehubah sirip adalah setempat kepada blok cuba dan dibuat apabila memasukinya.

  • Apabila keluar dari blok try, fail yang dikaitkan dengan fin ditutup secara automatik, mengelakkan keperluan untuk memanggil close() secara eksplisit.

  • Pendekatan ini menawarkan kelebihan pengurusan sumber automatik, mengelakkan terlupa untuk menutup fail.

  • Sumber yang diisytiharkan dalam pernyataan percubaan adalah muktamad secara tersirat dan tidak boleh ditakrifkan semula selepas penciptaan.

  • Skop sumber terhad kepada blok cuba-dengan-sumber.

  • Adalah mungkin untuk mengurus berbilang sumber dalam satu kenyataan percubaan, memisahkan setiap spesifikasi sumber dengan koma bertitik.

  • Satu contoh disediakan, menunjukkan cara mengubah suai program CopyFile untuk menggunakan cuba-dengan-sumber untuk mengurus kedua-dua sirip dan kaki.

Fechando automaticamente um arquivo

  • Kelebihan cuba-dengan-sumber:

  • Sumber seperti fail ditutup secara automatik pada penghujung blok percubaan.

  • Kod yang lebih ringkas dan dioptimumkan berbanding dengan pendekatan tradisional.

  • Pengendalian pengecualian:

  • Pengecualian semasa penutupan sumber dihalang tetapi tidak hilang.

  • Kedua-dua pengecualian (asal dan penutup) boleh diakses melalui senarai pengecualian yang ditindas.

  • Kepentingan pengetahuan tentang pendekatan tradisional:

  • Diperlukan untuk mengekalkan kod warisan yang tidak menggunakan cuba-dengan-sumber.

  • Penting untuk bekerja dalam persekitaran yang tidak menyokong JDK 7 atau versi yang lebih baru.

  • Kesimpulan:

  • cuba-dengan-sumber disyorkan untuk pengurusan sumber yang dioptimumkan dan mantap.

  • Pengetahuan tentang pendekatan tradisional adalah penting untuk pengaturcara.

Atas ialah kandungan terperinci Menutup fail secara automatik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn