Perbedaan throw dan throws dalam Java
Saat belajar bahasa pemrograman Java, sering kali kita menemui dua kata yang terdengar mirip: throw dan throws. Meski mirip dalam ejaan, keduanya memiliki fungsi yang sangat berbeda dalam penanganan error atau exception.
Throw digunakan untuk secara manual melempar sebuah exception di dalam kode. Artinya, saat kondisi tertentu terjadi—misalnya input tidak valid—kita bisa menggunakan throw untuk menghentikan alur program dan melempar error. Contohnya, jika angka negatif dimasukkan saat harusnya positif, kita bisa menulis throw new IllegalArgumentException().
Sementara itu, throws justru muncul di deklarasi method. Fungsinya memberi tahu bahwa method tersebut mungkin melempar exception, jadi si pemanggil harus siap menanganinya, biasanya dengan blok try-catch. Ini seperti peringatan: “Hati-hati, method ini bisa error, tangani dengan baik.”
Contoh sederhana: bayangkan sebuah method untuk membaca file. Karena file bisa saja tidak ditemukan, method ini akan dideklarasikan dengan throws IOException. Di sisi lain, jika kita ingin menolak umur negatif dalam program, kita akan pakai throw untuk langsung menghentikan proses dan memberi pesan error.
Jadi, meski sama-sama terkait exception, throw adalah aksi melempar, sedangkan throws adalah janji bahwa suatu method bisa melempar exception. Memahami perbedaan ini membantu kode lebih rapi dan mudah dikelola.
Komentar
Belum ada komentar. Jadilah yang pertama bereaksi.