Daftar Isi:
- Melontar kesalahan selama kondisi luar biasa
- Melewati kesalahan kepada pemanggil
- penanganan kesalahan yang diperlukan
Video: Exception Handling pada java (Try cacth finally throw and thorws) bahasa indonesia - budaychanel 2024
Penting bagi kode Java Anda untuk berusaha memperbaiki masalah. Namun, ada kalanya kode Anda tidak memiliki cukup informasi, sumber daya, hak, atau beberapa persyaratan lain untuk memperbaiki masalah.
Bila ini terjadi, kode Anda menimbulkan kesalahan dengan menggunakan objek pengecualian. Istilah pengecualian sesuai karena harus menjadi pengecualian peraturan, bukan tindakan pertama yang dilakukan aplikasi. Meski begitu, aplikasi menghadapi kesalahan yang memerlukan tindakan yang luar biasa, dan bagian berikut menjelaskan bagaimana menghadapi situasi seperti ini.
Melontar kesalahan selama kondisi luar biasa
Untuk latihan, Anda bisa membuat aplikasi yang bisa menghasilkan berbagai macam kesalahan. Biasanya, Anda tidak akan membuang kesalahan jika nilainya berada pada kisaran yang salah - Anda akan menampilkan pesan langsung ke pengguna. Namun, Anda dapat membuat contoh yang menunjukkan bagaimana melempar dan menangkap kesalahan dari dalam sebuah metode.
Melewati kesalahan kepada pemanggil
Banyak contoh kode yang Anda mulai dengan hanya mulai sampai pada titik di mana Anda memanggil metode dari main (). Metode utama () selalu merupakan tingkat teratas aplikasi Anda. Saat Anda memanggil metode, metode yang Anda sebut membentuk tingkat tambahan.
Misalnya, metode yang dipanggil dari main () akan berada pada tingkat kedua aplikasi Anda. Jika metode itu harus memanggil metode lain, metode itu akan berada pada tingkat ketiga, dan seterusnya. Sebagian besar aplikasi terdiri dari banyak tingkat panggilan.
Sebenarnya, ketika Anda melihat pengecualian di layar, sebenarnya menampilkan daftar metode yang memanggil metode saat ini dalam format yang disebut tumpukan panggilan .
Tumpukan panggilan adalah daftar metode dan urutan panggilan mereka dengan metode lain. Mengetahui tumpukan panggilan dapat membantu Anda menemukan sumber kesalahan potensial saat tidak terjadi pada tingkat aplikasi saat ini.
Kesalahan penanganan merupakan bagian penting dari praktik pemrograman yang baik. Jika Anda menginginkan aplikasi yang kuat yang tidak terus-menerus mogok, Anda perlu memberikan penanganan error yang baik. Namun, mencoba mengatasi kesalahan saat Anda tidak memiliki cukup informasi untuk menangani kesalahan itu juga menjadi masalah.
Bila kode Anda mencoba memperbaiki kesalahan pada tingkat yang terlalu rendah, ini menyembunyikan kesalahan dari tingkat yang mungkin dapat memperbaikinya. Ya, Anda ingin memperbaiki kesalahan pada tingkat serendah mungkin, namun tidak mengorbankan perbaikan yang sebenarnya bisa berakhir menyembunyikan sesuatu yang lebih serius.
Bila Anda mendapati bahwa tingkat aplikasi tertentu tidak memiliki sumber daya, informasi, hak istimewa, akses pengguna, atau item lain yang diperlukan untuk menangani kesalahan, maka Anda mengeluarkan pernyataan melempar dengan objek pengecualian yang sesuai.Tingkat aplikasi sebelumnya akan menerima pengecualian dan menentukan apakah ia dapat mengatasinya.
Namun, jika metode main () menerima pengecualian, Anda harus menentukan apa yang harus dilakukan dengan kesalahan tersebut, atau aplikasi akan macet. Ini umumnya dianggap sebagai praktik pemrograman yang buruk untuk membiarkan aplikasi mogok - Anda harus menemukan beberapa cara untuk mengatasi kesalahan yang dihadapi oleh aplikasi.
penanganan kesalahan yang diperlukan
Java menyediakan dua jenis pengecualian: diperiksa (yang dipantau oleh JRE) dan tidak dicentang (yang tidak dipantau oleh JRE). Anda memiliki pilihan untuk menangani pengecualian yang tidak terkendali. Namun, Java memaksa Anda untuk menangani pengecualian yang diperiksa. Kode Anda bahkan tidak akan dikompilasi jika Anda mencoba menggunakan metode yang memiliki pengecualian cek yang terkait dengannya.
Pengecualian yang dicek adalah salah satu yang JRE diberitahu oleh definisi kelas untuk dipantau. JRE memaksa pengguna kelas untuk memberikan penanganan pengecualian untuk memastikan bahwa kelas melakukan dengan andal.
Semua jenis rincian aneh terkait dengan pengecualian yang dicentang dan tidak dicentang. Cara mudah untuk mengetahui apakah pengecualian yang dicek adalah mengetahui kelas orang tua. Semua pengecualian yang dikelompokkan dari kelas Error atau RuntimeException tidak dicentang - setiap pengecualian lainnya dicentang.
Praktik terbaik adalah menangani setiap pengecualian dalam aplikasi Anda, dan Anda tidak perlu khawatir apakah pengecualian diperiksa atau tidak dicentang. Pengembang hebat selalu menangani potensi kesalahan - itulah intinya.