Rumah  >  Artikel  >  Java  >  Pengendalian Pengecualian dalam Java: Menggunakan Pendekatan Bercerita

Pengendalian Pengecualian dalam Java: Menggunakan Pendekatan Bercerita

DDD
DDDasal
2024-10-30 12:56:261023semak imbas

Pada suatu ketika dahulu di tanah Jawa, ada seorang pengaturcara bernama Alex. Alex suka membuat aplikasi untuk penduduk kampung. Pada suatu hari, dia membuat apl untuk membantu orang ramai menjejaki buah mereka.

Apakah Pengecualian di Jawa?

Tetapi sesuatu telah berlaku! Seorang penduduk kampung cuba melihat buah yang tidak wujud. Apl itu ranap, dan penduduk kampung itu keliru. Masalah ini dipanggil pengecualian. Pengecualian ialah ralat yang berlaku apabila program dijalankan. Ia menghentikan aliran biasa apl.

Kelebihan Pengendalian Pengecualian

Alex ingin menyelesaikan masalah ini. Dia belajar bahawa pengendalian pengecualian adalah sangat penting. Ia membantu menjadikan program lebih selamat dan lebih dipercayai. Dengan pengendalian pengecualian yang baik, apl boleh memberitahu pengguna tentang masalah dan bukannya ranap.

Hierarki Kelas Pengecualian Java

Alex mendapati bahawa Java mempunyai struktur untuk pengecualian. Di bahagian atas ialah kelas Boleh Lempar. Di bawahnya, terdapat dua cabang utama: Ralat dan Pengecualian. Ralat ialah masalah serius, manakala pengecualian lebih mudah dikendalikan.

Exception Handling in Java: Using Storytelling Approach

Jenis Pengecualian Java

Alex mengetahui terdapat dua jenis pengecualian utama:

  1. Pengecualian yang Disemak: Ini seperti amaran. Anda mesti membetulkannya sebelum anda boleh menjalankan program. Contohnya, semasa membaca fail yang mungkin tidak wujud.
  2. Pengecualian Tidak Ditanda: Ini berlaku tanpa amaran. Mereka biasanya bermaksud terdapat kesilapan dalam kod, seperti cuba mengakses indeks yang tidak wujud.

Kata Kunci Pengecualian Java

Alex menemui beberapa perkataan ajaib untuk membantunya:

  • cuba: Perkataan ini membungkus kod yang mungkin gagal.
  • tangkap: Perkataan ini menangkap kesilapan jika ia berlaku.
  • akhirnya: Perkataan ini dijalankan selepas cuba dan tangkap, tidak kira apa.
  • lempar: Perkataan ini digunakan untuk mencipta pengecualian dengan sengaja.
  • melempar: Perkataan ini digunakan dalam kaedah untuk mengatakan ia boleh membuang pengecualian.

Contoh Pengendalian Pengecualian Java

Alex menulis kod ini:

public class FruitTracker {
    public static void main(String[] args) {
        try {
            String[] fruits = {"Apples", "Oranges", "Bananas"};
            System.out.println(fruits[3]); // This will cause a mistake!
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("Oops! That fruit does not exist.");
        } finally {
            System.out.println("Check your fruits carefully!");
        }
    }
}

Sekarang, jika seseorang cuba melihat buah yang tiada, apl itu akan memberitahu mereka dengan baik dan bukannya ranap.

Blok Cuba-Tangkap Java

blok cuba-tangkap adalah penting. Blok cuba mengandungi kod yang mungkin gagal dan blok tangkapan mengendalikan ralat.

Blok Tangkapan Berbilang Java

Kadangkala, mungkin terdapat lebih daripada satu jenis ralat. Alex mengetahui bahawa dia boleh mempunyai beberapa blok tangkapan untuk mengendalikan pengecualian yang berbeza:

public class FruitTracker {
    public static void main(String[] args) {
        try {
            String[] fruits = {"Apples", "Oranges", "Bananas"};
            System.out.println(fruits[3]); // This will cause a mistake!
        } catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("Oops! That fruit does not exist.");
        } finally {
            System.out.println("Check your fruits carefully!");
        }
    }
}

Java Nested Try

Alex juga mendapat tahu tentang cubaan bersarang blok. Ini bermakna anda boleh meletakkan blok percubaan di dalam blok percubaan lain. Ini membantu mengurus ralat kompleks dengan lebih baik.

Java Akhirnya Sekat

sekat akhirnya sangat berguna. Ia berjalan tidak kira apa. Ia adalah tempat yang baik untuk membersihkan sumber, seperti menutup fail.

Kata Kunci Java Throw

Kata kunci lempar membolehkan Alex membuat pengecualian apabila berlaku masalah. Contohnya:

try {
    // Code that might throw different exceptions
} catch (IOException e) {
    // Handle IOException
} catch (SQLException e) {
    // Handle SQLException
}

Penyebaran Pengecualian Java

Kadangkala, pengecualian boleh menaikkan timbunan panggilan. Ini dipanggil penyebaran pengecualian. Jika kaedah tidak mengendalikan pengecualian, ia boleh menghantarnya kepada kaedah yang memanggilnya.

Java Throws Keyword

Kata kunci throws digunakan dalam kaedah untuk mengisytiharkan bahawa ia boleh membuang pengecualian. Dengan cara ini, pemanggil tahu mereka harus mengendalikan pengecualian.

Java Throw vs Throws

Alex mengetahui bahawa lempar digunakan untuk mencipta pengecualian, manakala lempar digunakan dalam tandatangan kaedah untuk menunjukkan bahawa kaedah boleh membuang pengecualian.

Java Final vs Finally vs Finalize

Alex juga menemui perbezaan antara akhir, akhirnya dan akhir:

  • akhir: Kata kunci yang digunakan untuk mengisytiharkan pemalar atau menghalang pewarisan kelas.
  • akhirnya: Blok yang sentiasa dilaksanakan selepas cuba dan tangkap.
  • memuktamadkan: Kaedah yang dipanggil oleh pemungut sampah sebelum objek dialih keluar daripada ingatan.

Pengendalian Pengecualian Java dengan Penggantian Kaedah

Alex mengetahui bahawa apabila subkelas mengatasi kaedah, ia hanya boleh membuang pengecualian yang sama atau lebih spesifik daripada kaedah induk.

Pengecualian Tersuai Java

Akhirnya, Alex menyedari dia boleh mencipta pengecualian tersuai. Ini bermakna dia boleh membuat pengecualian yang sesuai dengan keperluan aplnya. Contohnya:

throw new Exception("This is a custom error!");

Kesimpulan

Alex mempelajari banyak perkara penting tentang pengendalian pengecualian. Dia menjadikan aplnya lebih selamat dan mudah digunakan. Penduduk kampung gembira kerana aplikasinya berfungsi dengan baik. Alex menjadi wira, dan semua orang di Jawa hidup bahagia selamanya.

Atas ialah kandungan terperinci Pengendalian Pengecualian dalam Java: Menggunakan Pendekatan Bercerita. 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