Exception Handling – Kotlin

Exception handling hampir sama dengan Java, satu perbedaanya adalah semua Exception di Kotlin itu unchecked. Artinya exception tidak harus ditambahakan sebagai signature sebuah fungsi, misal NullPointerException? itu unchecked exception karena bisa muncul dimana saja.

Sedangkan checked exception itu contohnya IOException? dimana exception ini dideklarasikan sebagai signature beberapa fungsi File. Karena Kotlin semua exceptionnya unchecked maka exception tidak pernah dideklarasikan sebagai signature sebuah fungsi.

Penanganan exceptionnya sama persis dengan Java yaitu denga syntax try?, catch? dan finally?. Kode yang ingin dihandle terletak pada block try?, tanpa blok catch? atau beberapa blok catch? dan diakhiri dengan blok finally?. Blok finally? akan selalu dipanggil meskipun ada atau tidaknya exception. Blok finally? tidak harus ada tapi minimal ada satu blok catch .