异常分类
如图(图片引用某博主,但是名字忘了,抱歉!!!):
java中异常继承的根类是:Throwable
Throwable(根类)
/ \
Error Exception(异常,需要研究和处理)
/ \
编译时异常(检查型异常) RuntimeException(非检查型异常)
检查型异常需要手动将异常抛出
为什么检查型异常必须要抛出异常
因为不可控,比如检查型异常中的IOException
,比如我们要new FileOutputStream("D:\test\StudentInfo.txt");
,java不知道你盘符里面到底有没有这个路径下的文件,万一没有的话怎么办,所有就需要我们try…catch一下,万一没找到的话,就报错,让调用者去处理这个没找到的错误。