(以下内容全部来自上述课程)
异常
异常:异常就是代表程序出现的问题
1. 异常的分类
1.1 Error
代表的是系统级别的错误(属于严重问题)
系统一旦出现问题,sun公司会把这些错误封装成Error对象。
Error对象是给sun公司自己用的,不是给我们程序员用的。
因此我们开发人员不用管它。
1.2 Exception
叫做异常,代表程序可能出现的问题。
我们通常把Exception以及它的子类来封装程序出现的问题。
1.2.1 RuntimeException以及子类
运行时异常:编译阶段不会出现异常提醒。运行时出现的异常。(如:数组索引越界异常)
1.2.2 其他异常
编译时异常:编译阶段就会出现异常提醒的。(如:日期解析异常)
在编译阶段,必须手动处理,否则代码报错。
2.异常的作用
- 异常是用来查询bug的关键参考信息
- 异常可以作为方法内部的一种特殊返回值,以便通知调用者底层的执行情况
2.1 查询bug
2.2 特殊返回值
具体演示:
3. 异常的处理方式
3.1 JVM默认的处理方式
- 把异常的名称,异常的原因及异常出现的位置等信息输出在控制台
- 程序停止执行,异常下面的代码不会再执行了
3.2 自己处理(捕获异常)
try{
可能出现异常的代码
} catch(异常类名 变量名){
异常的处理代码;
}
目标:当代码出现异常时,可以让程序继续往下执行。
3.2.1 细节
3.2.2 异常中的常见处理方法
快捷键:ctrl+alt+t
最常用:printStackTrace():仅仅是打印信息,不会停止程序运行
3.3 抛出处理(调用者处理)
3.3.1 throws
写在方法定义处,表示声明一个异常。
告诉调用者,使用本方法可能会有哪些异常。
3.3.2 throw
写在方法内,结束方法
手动抛出异常对象,交给调用者(可以try catch进行捕获)
方法中下面的代码不再执行了
4. 自定义异常
- 定义异常类
- 写继承关系
- 空参构造
- 带参构造
意义:就是为了让控制台的报错信息更加的见名知意
File
- File对象就表示一个路径,可以是文件的路径,也可以是文件夹的路径
- 这个路径可以是存在的,也允许是不存在的
1. 构造方法
2. 成员方法
2.1 判断、获取
2.2 创建、删除
mkdirs:既可以创建单级的,又可以创建多级的文件夹
delete:
- 如果删除的是文件,则直接删,不走回收站
- 如果删除的是空文件夹,则直接删,不走回收站
- 如果删除的是有内容的文件夹,则删除失败