try/catch/finally
Pelajari cara menggunakan try, catch dan finally untuk mengendalikan ralat masa jalan dengan selamat.
try/catch/finally ialah pelajaran Java Academy percuma di CoddyKit. Ini ialah pelajaran 1 daripada 3. Anda boleh membaca keseluruhan pelajaran di bawah secara percuma — kemudian berlatih secara praktikal dalam pelayar menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Java Academy, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Java Academy merangkumi sejumlah 3 pelajaran.
Pengenalan
Program kadangkala menghadapi ralat: masukan tidak sah, fail yang hilang atau pembahagian dengan sifar. Pengecualian ialah cara Java mengendalikannya tanpa menyebabkan program ranap.
Gambaran keseluruhan cuba/tangkap
Bungkus kod berisiko dalam blok cuba. Jika pengecualian berlaku, kawalan beralih kepada blok tangkap yang sepadan. Cara ini membolehkan anda mengendalikan ralat dengan baik.
Kod: cuba/tangkap mudah
Kod ini menangkap ArithmeticException dan memaparkan mesej yang mesra dan bukannya menyebabkan program ranap.
public class Main {
public static void main(String[] args) {
try {
int x = 10 / 0; // risky division
System.out.println("Result=" + x);
} catch (ArithmeticException e) {
System.out.println("Cannot divide by zero!");
}
}
}
Pelbagai tangkapan
Anda boleh menyusun beberapa blok tangkap untuk mengendalikan jenis pengecualian yang berbeza secara berasingan. Susunan penting: letakkan blok khusus sebelum blok umum.
Kod: pelbagai tangkapan
NullPointerException ditangkap oleh blok khususnya. Setiap jenis boleh dikendalikan dengan cara yang berbeza.
public class Main {
public static void main(String[] args) {
try {
String s = null;
System.out.println(s.length()); // NullPointerException
} catch (ArithmeticException e) {
System.out.println("Math error");
} catch (NullPointerException e) {
System.out.println("Null reference error");
}
}
}
Kod: blok akhir
Blok akhir dilaksanakan sama ada pengecualian berlaku atau tidak. Gunakannya untuk pembersihan seperti menutup fail.
public class Main {
public static void main(String[] args) {
try {
int[] arr = {1,2};
System.out.println(arr[5]); // ArrayIndexOutOfBounds
} catch (ArrayIndexOutOfBoundsException e) {
System.out.println("Bad index!");
} finally {
System.out.println("Finally block always runs");
}
}
}
Semakan blok akhir
Semakan pantas: Apakah tujuan blok akhir?
Ringkasan
Ringkasan: Blok cuba mengendalikan kod berisiko, blok tangkap bertindak balas terhadap ralat, dan blok akhir dijalankan setiap kali untuk pembersihan.
Pelajari Java dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 104
- Pelajaran
- 374
Soalan Lazim
Adakah pelajaran “try/catch/finally” percuma?
Ya — teks penuh “try/catch/finally” boleh dibaca secara percuma di web ini. Untuk berlatih secara interaktif menggunakan penyunting kod terbina dalam dan tutor kecerdasan buatan 24/7, serta membuka kunci baki kursus Java Academy, tingkat taraf kepada CoddyKit PRO. Kursus Java Academy merangkumi sejumlah 3 pelajaran.
Apakah yang akan saya pelajari dalam “try/catch/finally”?
Pelajari cara menggunakan try, catch dan finally untuk mengendalikan ralat masa jalan dengan selamat. Anda berlatih Java Academy menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Java Academy?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Java Academy di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 3.
Berapa lamakah pelajaran “try/catch/finally” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Java Academy ini?
Ya. Setiap pelajaran Java Academy menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- try/catch/finally
- Checked berbanding Unchecked
- Membaca Jejak Timbunan