1.异常
1.1异常定义
异常:异常就是代表程序出现的问题
Throwable异常包括Error和Exception
Error异常代表的是系统级别的错误,属于严重问题。系统一旦出现问题,孙公司会把这些错误封装成Error对象。
Exception:叫做异常,代表程序可能出现的问题。我们通常会用Exception以及其他子类来封装程序出现的问题。
运行时异常:RunTimeException及其子类、编译阶段不会出现异常提醒,运行时出现的异常。
编译时异常:编译阶段就会出现异常提醒。
1.2异常的作用
1)异常时用来查询bug的关键参考信息
2)异常可以作为方法内部的一致特殊返回值,以便通知调用者底层的执行情况
1.3异常的处理方式
1)JVM默认处理
把异常的名称
2)自己处理(捕获异常)
格式:可以让程序继续往下执行,不会停止
try{
可能出现异常的代码;
}catch(异常类型 变量名){
异常处理代码;
}finally{
finally里面的代码一定会被执行,除非虚拟机停止;
}
3)抛出异常
throws:写在方法定义处,表示声明一个异常,告诉调用者,使用本方法可能会有哪些异常.编译时异常必须要写,运行时异常可以不写
public void 方法() throws 异常类名1,异常类名2...{}
throw:写在方法内,结束方法,手动抛出异常对象,交给调用者,方法下面的代码不再执行
1.4Throwable的成员方法

printStackTrace,底层通过System.err.println以红色字体输出异常的错误信息。只打印错误信息,不会停止程序运行
1.5自定义异常
1)定义异常关系
2)写继承关系
3)空参构造
4)带参构造
意义:为了让控制台的报错信息更加见名知意
2.File
2.1File的定义
File对象就表示一个路径,可以是文件的路径、也可以是文件夹的路径

2.2File的成员方法
1)判断、获取

length:返回文件的大小(字节数量)。这个方法只能获取文件的大小,单位是字节,如果单位是M或G可以不断除以1024。这个方法无法获取文件夹的大小。
getName:对于文件,返回的是文件名+后缀名,对于文件夹只返回文件夹的名字
2)创建、删除

createNewFile细节:
--创建一个新的空的文件,如果当前路径表示的文件是不存在的,则创建成功,方法返回true,如果当前路径是存在的,则创建失败,返回false。
--如果父级路径是不存在的,那么方法会有异常IOException。
--创建出来的一定是文件,如果路径中没有写后缀名,那么创建出来的是一个没有后缀名的文件。
mkdir细节:只能创建单级文件夹,无法创建多级文件夹。
mkdirs细节:既可以创建单级文件夹又可以创建多级文件夹
delete方法默认只能删除文件和空文件夹,会直接将东西删除不走回收站
3)获取和遍历

细节:
1)当调用者File表示的路径不存在时或者不是文件时,返回null
2)当调用者File表示的路径时一个空文件夹时,返回一个长度为0的数组
3)当调用者File表示的路径时应该有内容的文件夹时,将里面所有的文件和文件夹的路径放在File数组中返回
4)当调用者File表示的路径时应该有隐藏文件的文件夹时,将里面所有的文件和文件夹的路径放在File数组中返回,包含隐藏文件夹
5)当调用者File表示的路径时需要权限才能访问文件夹时,返回null