JavaRush /Java Blog /Random-ID /Rehat kopi #158. 10 Tips Menangani Pengecualian di Java

Rehat kopi #158. 10 Tips Menangani Pengecualian di Java

Dipublikasikan di grup Random-ID
Sumber: Medium Posting ini akan membantu Anda lebih memahami cara menangani pengecualian secara efektif di Java. Rehat kopi #158.  10 Tips Menangani Pengecualian di Java - 1Menangani pengecualian Java bisa jadi menantang. Mungkin sulit untuk menentukan pengecualian Java mana yang harus ditangani, pengecualian mana yang perlu dimunculkan kembali, dan mana yang diabaikan begitu saja. Namun, ada sejumlah pedoman berguna yang secara efektif dapat membantu Anda menangani pengecualian dan membuat aplikasi baru. Mari berkenalan dengan mereka.
  1. Berhati-hatilah dengan apa yang Anda catat.
  2. Jangan abaikan pengecualian yang diberikan.
  3. Gunakan penangan pengecualian global.
  4. Jangan menutup sumber daya secara manual.
  5. Lemparkan lebih awal dan tangani pengecualian nanti.
  6. Pengecualian Java tidak boleh dicatat dan ditampilkan kembali.
  7. Periksa pengecualian yang disembunyikan.
  8. Dalam pernyataan throw, nyatakan pengecualian dengan tepat.
  9. Tangani pengecualian yang paling jelas terlebih dahulu.
  10. Gunakan semantik penanganan pengecualian modern.

1. Berhati-hatilah dengan apa yang Anda catat

Pengembang perangkat lunak harus selalu menyadari hak kliennya atas keamanan dan privasi.
  • Program Java dapat memindahkan data ke sistem lain, dan sejumlah besar pengembang dan administrator dapat bekerja dengannya (termasuk memperbaiki bug).
  • Jika ada data sensitif yang dicatat dalam file log, perusahaan Anda tidak akan mematuhi persyaratan keamanan dan Anda mungkin kehilangan pekerjaan.

2. Jangan abaikan pengecualian yang diberikan

Jangan menangkap pengecualian lalu mengabaikannya. Menyembunyikan pengecualian bukanlah cara yang baik untuk menanganinya di Java. Minimal, tuliskan nama pengecualian dan pesan terkait. Dengan cara ini, informasi mengenai masalah dapat ditemukan di entri Anda. Men-debug aplikasi Java karena pengecualian tersembunyi sangatlah sulit.

3. Gunakan penangan pengecualian global

Selama eksekusi program akan selalu ada beberapa pengecualian yang sebelumnya tidak tertangkap dalam kode Anda. Oleh karena itu, selalu tambahkan pengendali pengecualian global untuk menangani pengecualian yang tidak tertangkap. Hal ini tidak hanya memungkinkan pengecualian untuk dicatat dan ditangani, namun juga akan mencegah aplikasi mogok jika pengecualian dilemparkan pada waktu proses.

4. Jangan menutup sumber daya secara manual

Rekomendasi penting lainnya ketika menangani pengecualian Java adalah mengizinkan JVM memanggil metode close() pada sumber daya yang ditutup. Jangan mencoba menutupnya sendiri. Hal ini dapat dicapai dengan mudah dengan menginisialisasi sumber daya di dalam modul try-resources . Semantik:
public class TryWithResourcesExample {

public static void main(String[] args) throws Exception {

try (Door door = new Door()) {

door.swing();

} catch (Exception e) { ..... }

} finally { .....}

}

}
Seperti yang Anda lihat, setelah blok try...catch selesai, JVM menutup sumber daya untuk Anda, menghilangkan kemungkinan kebocoran sumber daya yang rumit dan sulit diperbaiki.

5. Lemparkan lebih awal dan tangani pengecualian nanti

Lemparkan pengecualian setiap kali kondisi pengecualian terjadi pada kode Anda. Jangan menunggu baris kode apa pun dieksekusi sebelum keluar dari metode yang Anda gunakan. Saat menangkap pengecualian, fungsi tersebut harus ditempatkan di akhir metode. Hal ini mengurangi jumlah blok tangkapan dalam metode Anda, membuat kode Anda lebih mudah dibaca dan dipelihara.

6. Pengecualian Java tidak boleh dicatat dan ditampilkan kembali

Jika terjadi pengecualian, lakukan salah satu hal berikut:
  • Lanjutkan bekerja dengan program Anda saat Anda mencatat pengecualian.
  • Lemparkan pengecualian lagi dan izinkan cara lain untuk mencatat data.
Jangan gabungkan kedua tahap tersebut. Jangan pernah mencatat lalu menampilkan kembali pengecualian yang sama, seperti yang ditunjukkan pada contoh di bawah ini:
try {

Class.forName("com.min.Example");

} catch (ClassNotFoundException ex) {

log.warning("Class was not found.");

throw ex;

}
Hal ini mengakibatkan duplikasi kode dan file log menjadi tersumbat dengan entri duplikat, sehingga lebih sulit untuk mendiagnosis kode.

7. Periksa pengecualian yang disembunyikan

Pengecualian yang disembunyikan adalah fitur bahasa baru yang tidak diketahui semua pengembang. Dengan menerapkan metode yang telah terbukti dengan sumber daya, dua pengecualian dapat dilakukan secara bersamaan. Kondisi ini dapat dengan mudah diperiksa dengan menanyakan keberadaan pengecualian yang disembunyikan. Satu-satunya cara untuk menentukan apakah kondisi ini telah terjadi adalah dengan melihat apakah pengecualian target juga berisi pengecualian yang disembunyikan.

8. Saat menggunakan pernyataan throw, tentukan pengecualian yang tepat

Dengan menggunakan pernyataan throw di dalam badan metode, pengembang yang ceroboh akan menggunakan kelas pengecualian umum. Tapi ini bukan cara terbaik untuk menangani pengecualian di Java. Sebaliknya, selalu tentukan pengecualian pasti yang mungkin diberikan oleh metode tersebut. iIni membantu pengembang lain untuk mengetahui berbagai teknik penanganan kesalahan yang dapat digunakan ketika metode tertentu tidak berfungsi seperti yang diharapkan.

9. Tangani pengecualian yang paling jelas terlebih dahulu

Ini lebih merupakan persyaratan kompiler daripada tip untuk praktik penanganan pengecualian Java, namun pengembang harus selalu menangani pengecualian yang paling jelas terlebih dahulu dan pengecualian yang paling tidak pasti terakhir. Jika aturan ini tidak diikuti, JVM akan mengembalikan kesalahan waktu kompilasi dengan pesan kesalahan yang sangat samar dan sulit dipahami. Jadikan hidup Anda sebagai pengembang perangkat lunak lebih mudah dengan selalu menangani pengecualian tertentu dalam kode Anda.

10. Gunakan semantik penanganan pengecualian modern

Java menyediakan banyak fitur penanganan kesalahan dan pengecualian yang menyederhanakan pengembangan dan secara signifikan mengurangi jumlah kode Java. Gunakan kemampuan untuk menangani beberapa pengecualian dalam satu blok tangkapan dan secara otomatis menutup sumber daya menggunakan blok coba . Gunakan Pengecualian Runtime sehingga pengembang lain tidak perlu menangani pengecualian yang Anda berikan.
Komentar
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION