文章摘要:
小白零基础快速入门Java —— 第十一课:异常。本文介绍了以下内容:1、异常的概念。2、怎么自定义异常。3、异常处理的两种方式。4、Throw 和Throws的区别。
1、认识异常
- 异常就是代表程序出现的问题
Throwable 是 Java 语言中所有错误或异常的超类。下一层分为 Error 和 Exception
Error
- Error 类是指 java 运行时系统的内部错误和资源耗尽错误。应用程序不会抛出该类对象。如果
出现了这样的错误,除了告知用户,剩下的就是尽力使程序安全的终止。
Exception(RuntimeException、CheckedException)
2. Exception 又 有 两 个 分 支 , 一 个 是 运 行 时 异 常 RuntimeException , 一个是CheckedException。
2、自定义异常
- throw: 抛出去这个异常对象
- throws: 用在方法上,抛出方法内部的异常
3、异常的处理
- 日常开发中,可以用exception来替代FileNotFoundException等子类异常
- 遇到问题不进行具体处理,而是继续抛给调用者 (throw,throws)
- 抛出异常有三种形式,一是 throw,一个 throws,还有一种系统自动抛异常。
- try catch 捕获异常针对性处理方式
4、Throw和Throws的区别
位置不同
- throws 用在函数上,后面跟的是异常类,可以跟多个;
- throw 用在函数内,后面跟的是异常对象。
功能不同
- throws 用来声明异常,让调用者只知道该功能可能出现的问题,可以给出预先的处理方式;
- throw 抛出具体的问题对象,执行到 throw,功能就已经结束了,跳转到调用者,并将具体的问题对象抛给调用者。也就是说 throw 语句独立存在时,下面不要定义其他语句,因为执行不到。
- throws 表示出现异常的一种可能性,并不一定会发生这些异常;throw 则是抛出了异常, 执行 throw 则一定抛出了某种异常对象。
- 两者都是消极处理异常的方式,只是抛出或者可能抛出异常,但是不会由函数去处理异常,真正的处理异常由函数的上层调用处理。