Kotlin 极简小抄 P5(异常、异常处理、自定义异常)

Kotlin 概述

  1. Kotlin 由 JetBrains 开发,是一种在 JVM(Java 虚拟机)上运行的静态类型编程语言

  2. Kotlin 旨在提高开发者的编码效率和安全性,同时保持与 Java 的高度互操作性

  3. Kotlin 是 Android 应用开发的首选语言,也可以与 Java 一样用于服务器端开发


一、异常

1、异常引入
  • 除数为 0 会抛出异常
kotlin 复制代码
val result: Int = 10 / 0
复制代码
# 输出结果

Exception in thread "main" java.lang.ArithmeticException: / by zero
2、抛出异常
  • 使用 throw 关键字主动抛出异常
kotlin 复制代码
throw Exception("这是异常")
复制代码
# 输出结果

Exception in thread "main" java.lang.Exception: 这是异常

二、异常处理

1、try catch
kotlin 复制代码
try {
    val result: Int = 10 / 0
} catch (e: Exception) {
    println(e.message)
}
复制代码
# 输出结果

/ by zero
2、try catch finally
kotlin 复制代码
try {
    val result: Int = 10 / 0
} catch (e: Exception) {
    println(e.message)
} finally {
    println("finally")
}
复制代码
# 输出结果

/ by zero
finally
注意事项
  • 如果异常类型不匹配,就会不执行 catch 中的代码
kotlin 复制代码
try {
    val result: Int = 10 / 0
} catch (e: IndexOutOfBoundsException) {
    println("catch: " + e.message)
}
复制代码
# 输出结果

Exception in thread "main" java.lang.ArithmeticException: / by zero

三、自定义异常

  1. 继承 Exception 实现自定义异常
kotlin 复制代码
class MyCustomException(message: String) : Exception(message)
  1. 使用自定义异常
kotlin 复制代码
try {
    throw MyCustomException("这是自定义异常")
} catch (e: Exception) {
    println(e.message)
}
复制代码
# 输出结果

这是自定义异常
相关推荐
爬山算法1 分钟前
Netty(15)Netty的线程模型是什么?它有哪些线程池类型?
java·后端
C++业余爱好者12 分钟前
公司局域网访问外网的原理
java
liwulin050617 分钟前
【PYTHON】COCO数据集中的物品ID
开发语言·python
小鸡吃米…18 分钟前
Python - XML 处理
xml·开发语言·python·开源
@淡 定35 分钟前
异常处理最佳实践
java
一起养小猫37 分钟前
LeetCode100天Day1-字符串匹配与Z字形变换
java·leetcode
白宇横流学长40 分钟前
基于SpringBoot实现的冬奥会科普平台设计与实现【源码+文档】
java·spring boot·后端
APIshop1 小时前
Java爬虫1688详情api接口实战解析
java·开发语言·爬虫
Mr.Jessy1 小时前
JavaScript高级:深浅拷贝、异常处理、防抖及节流
开发语言·前端·javascript·学习
bing.shao1 小时前
Golang 高并发秒杀系统踩坑
开发语言·后端·golang