Java:异常,File类,递归

异常:

异常的概述

1、在java程序运行过程中,出现的不正常情况,出现的错误,称为异常
2、异常就是一个对象,描述那些不符合生活正常情况的异常情况,包含了这些情况的原因、类型、描述以及位置,这些内容都封装到异常对象中。
3、异常也是一种处理异常情况的机制,可以进行跳转、捕获以及结束程序

异常的体系

1、Throwable:
可抛出的,是异常体系的顶层父类,其他的异常或者错误都是Throwable的子类类型,只有Throwable的体系类型,才可以使用异常的处理机制
2、Error错误:
是Throwable的子类,用于描述那些无法捕获和处理的错误情况,属于非常严重的错误,StackOverflowError
3、Exception异常:
是Throwable的子类,用于描述那些可以捕获和处理的例外情况,属于不太严重的错误,ArrayIndexOutOfBoundsException
4、RuntimeException:
运行时异常,是Exception的特殊的子类,在编译阶段不做检查的一个异常
体系图
Throwable(可抛出的)
Error(错误)必须修改源代码
Exception(异常) 捕获和处理
RuntimeException
Exception下除了RuntimeException其他的类都是编译时异常,这些必须处理程序才能运行,而RuntimeExcetpion及它子类都是运行时异常,可以不处理也能运行,只有程序运行过程中除了出了问题才会把运行时异常抛出

在jvm中默认处理异常的机制

在这里插入图片描述
常见的异常:
ArithmeticException 数学运算异常
ArrayIndexOutOfBoundsException 索引越界异常
NullPointerException 空指针异常

处理异常的五个关键字:

try 、catch 、 finally 、 throw 、 throws

手动处理异常的方式

1、有两大类处理异常的方式:
异常的声明:某个方法有编译时异常,编译就会无法通过,需要在异常所在的方法声明上,声明该方法可能出现的编译时异常
异常的处理:出现异常之后,可以通过某些格式来捕获和处理异常,可以让程序在出现异常之后,继续运行。可以定义自己处理异常的逻辑。
2、捕获处理异常的代码格式:
try…catch
格式:
try {
可能出现异常的代码
} catch (异常类型1 异常对象名1) {
异常类型1出现之后的处理办法
} catch (异常类型2 异常对象名2) {
异常类型2出现之后的处理办法
}

} catch (异常类型n 异常对象名n) {
异常类型n出现之后的处理办法
}
try…catch…finally
格式:
try {
可能发生异常的代码
} catch (可能发生的异常类型 异常对象名称) {
当前异常类型的处理方式
} finally {
一定要执行的代码
}
try…finally(无法捕获处理异常)
格式:
try {
可能发生异常的代码
} finally {
一定要执行的代码
}

编译时异常和运行时异常区别

在这里插入图片描述

异常体系中的常用方法

在这里插入图片描述

throw关键字

在这里插入图片描述

throws关键字

在这里插入图片描述

throw和throws的区别:

  1. throw 是异常的申明 throws 用于异常抛出
    2. throw 确实会发生异常 throws 异常不一定会出现
    3. throw 后面只能够跟 一个 throws 可以跟多个
    4. throw 与 throws 搭配使用

File类:

File类

在这里插入图片描述
注意点:File 类的实例是不可变的;也就是说,一旦创建,File 对象表示的抽象路径名将永不改变

File类型的构造方法

在这里插入图片描述

File类型的创建方法

在这里插入图片描述

File类型的删除方法

在这里插入图片描述

File类型常用的判断功能

在这里插入图片描述

递归:

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值