Dart Academy · Pelajaran

finally dan Pembersihan yang Terjamin

Menjalankan kode baik terjadi throw maupun tidak

Pelajaran 3 dari 413 langkah

finally dan Pembersihan yang Terjamin adalah pelajaran Dart Academy gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Dart Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Dart Academy mencakup 4 pelajaran total.

Pembersihan Harus Selalu Berjalan

Berkas dan koneksi yang dibuka harus ditutup meskipun kode mengalami kegagalan. Dart menyediakan finally untuk pembersihan yang selalu dijalankan. 🧹

Blok finally

Blok finally dijalankan setelah try dan catch, apa pun yang terjadi. Baik berhasil maupun gagal, kodenya selalu dieksekusi.

try {
  work();
} finally {
  cleanup();
}

Berjalan Setelah Berhasil

Jika blok try selesai tanpa kesalahan, Dart tetap menjalankan finally tepat setelahnya sebelum melanjutkan.

Berjalan Setelah Penangkapan

Saat suatu pengecualian ditangkap, blok catch dijalankan, lalu finally juga dijalankan. Keduanya berjalan dalam urutan tersebut.

try {
  fail();
} catch (e) {
  log(e);
} finally {
  close();
}

Berjalan Bahkan Tanpa Penangkapan

Gunakan try hanya dengan finally, tanpa catch. Pengecualian tetap diteruskan, tetapi pembersihan dijalankan terlebih dahulu saat pengecualian keluar.

try {
  risky();
} finally {
  release();
}

Mengapa Tidak Menggandakannya Saja?

Tanpa finally, Anda harus menyalin pembersihan ke jalur berhasil dan jalur kesalahan. Satu blok finally membuatnya tetap berada di satu tempat.

Pembersihan Sebelum Pelemparan Ulang

Bahkan ketika pengecualian terus diteruskan tanpa tertangkap, finally tetap dijalankan terlebih dahulu, sehingga sumber daya tidak pernah bocor.

Menutup Berkas dengan Aman

Contoh klasik: buka sumber daya di dalam try, gunakan, lalu tutup dengan finally terlepas dari berhasil atau tidaknya pembacaan.

try {
  file.read();
} finally {
  file.close();
}

Hindari Mengembalikan Nilai di finally

return di dalam finally akan mengesampingkan return atau pengecualian sebelumnya. Gunakan finally hanya untuk pembersihan, bukan alur kendali.

Urutan Eksekusi

Ingat urutannya: try dijalankan, lalu catch jika diperlukan, kemudian finally paling akhir. Pembersihan selalu menutup blok tersebut.

try-catch-finally Lengkap

Ini menggabungkan ketiganya: pekerjaan yang dilindungi, penanganan kesalahan, dan pembersihan finally yang dijamin di akhir.

try {
  open();
} catch (e) {
  print(e);
} finally {
  close();
}

Pemeriksaan Singkat

Kapan blok finally dijalankan?

Ringkasan

Sekarang Anda dapat menggunakan finally untuk pembersihan yang dijamin berjalan di setiap jalur: berhasil, kesalahan tertangkap, atau pelemparan yang tidak tertangkap. Tidak ada kebocoran. 🔒

Gratis untuk memulai

Belajar Dart dengan tutor AI — gratis

Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.

Kursus
30
Pelajaran
120

Pertanyaan yang Sering Diajukan

Apakah pelajaran “finally dan Pembersihan yang Terjamin” gratis?

Ya — teks lengkap “finally dan Pembersihan yang Terjamin” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Dart Academy, upgrade ke CoddyKit PRO. Kursus Dart Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “finally dan Pembersihan yang Terjamin”?

Menjalankan kode baik terjadi throw maupun tidak Kamu berlatih Dart Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Dart Academy?

Tidak diperlukan pengalaman sebelumnya. Dart Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.

Berapa lama pelajaran “finally dan Pembersihan yang Terjamin” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Dart Academy ini?

Ya. Setiap pelajaran Dart Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. throw, try, dan catch
  2. Klausa on dan Tipe Exception
  3. finally dan Pembersihan yang Terjamin
  4. Exception Khusus dan rethrow
← Kembali ke Dart Academy