例外處理(Exception Handling)是編寫健壯應用程式的重要部分。其主要目的是:
Kotlin 的例外處理使用 try-catch
區塊來捕獲和處理異常。還可以使用 finally
區塊來執行無論是否發生異常都會執行的代碼。
try {
// 可能拋出異常的代碼
} catch (e: ExceptionType) {
// 處理異常
} finally {
// 無論是否發生異常都會執行的代碼
}
範例:
fun main() {
try {
val result = 10 / 0 // 這裡會拋出 ArithmeticException
} catch (e: ArithmeticException) {
println("Cannot divide by zero: ${e.message}")
} finally {
println("This block is always executed")
}
}
可以使用 throw
關鍵字來主動拋出異常。
fun validateAge(age: Int) {
if (age < 18) {
throw IllegalArgumentException("Age must be at least 18")
}
}
fun main() {
try {
validateAge(15)
} catch (e: IllegalArgumentException) {
println("Exception caught: ${e.message}")
}
}
可以定義自己的異常類別,繼承自 Exception
類或其子類。
class CustomException(message: String) : Exception(message)
fun validate(value: Int) {
if (value < 0) {
throw CustomException("Value cannot be negative")
}
}
fun main() {
try {
validate(-1)
} catch (e: CustomException) {
println("Custom exception caught: ${e.message}")
}
}