异常、File

异常、File

异常

异常就是代表程序出现的问题

1721024277423

Error:代表的系统级别错误(属于严重问题)。系统一旦出现问题,sun公司会把这些错误封装成Error对象。Error是给sun公司自己用,不是给我们程序员用的。因此我们开发人员不用管它。

Exception:叫做异常代表程序可能出现的问题。我们通常会用Exception以及他的子类来封装程序出现的问题。

运行时异常:RuntimeException及其子类,编译阶段不会出现异常提醒。运行时出现的异常(如:数组索引越界异常)

编译时异常:编译阶段就会出现异常提醒的。(如:日期解析异常)

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

编译时异常

  • 没有继承RuntimeException的异常,直接继承于Exception。编译阶段就会错误提示。
  • 除了RuntimeException和他的子类,其他都是编译时异常。编译阶段需要进行处理,作用在于提醒程序员。

运行时异常

  • RuntimeException本身和子类。编译阶段没有错误提示,运行时出现的。
  • 一般是由于参数传递错误带来的问题。

异常的作用

作用一:异常是用来查询bug的关键参考信息

作用二:异常可以作为方法内部的一种特殊返回值,以便通知调用者底层的执行情况。

异常的处理方式

①JVM默认的处理方式
  • 把异常的名称,异常原因及异常出现的位置等信息输出在了控制台
  • 程序停止执行,下面的代码不会再执行了
②自己处理(捕获异常)
格式:
try{
	可能出现异常的代码;
}catch(异常类名 变量名){
	异常处理的代码;
}
目的:当代码出现异常时,可以让程序继续往下执行。

1721026613980

灵魂四问
1.如果try中没有遇到问题,怎么执行?

会把try里面所有的代码全部执行完毕,不会执行catch里面的代码。只有当出现了异常才会执行catch里面的代码。

2.如果try中可能会遇到多个问题,怎么执行?

会写多个catch与之对应。

细节:如果我们要捕获多个异常,这些异常中如果存在父子关系的话,那么父类一定要写在下面。

了解性:
在JDK7之后,我们可以在catch中同时捕获多个异常,中间用|进行隔开。表示如果出现了A异常或者B异常的话,采取同一种处理方案。

3.如果try中遇到的问题没有捕获,怎么执行?

相当于try…catch的代码白写了,最终还是会交给虚拟机进行处理。

4.如果try中遇到了问题,那么try下面的其他代码还会执行吗?

下面的代码就不会执行了,直接跳转到对应的catch当中,执行catch里面的语句体。但是如果没有对应catch与之匹配,那么还是会交给虚拟机进行处理。

③抛出异常
throws

注意:写在方法定义处,表示声明一个异常。告诉调用者,使用本方法可能会有哪些异常

public void 方法()throws 异常类名1,异常类名2...{
	...
}
  • 编译时异常:必须写
  • 运行时异常:可以不写
throw

注意:写在方法内,结束方法。手动抛出异常对象,交给调用者。方法中下面的代码不再执行了

public void 方法(){
	throw new NullPointerException();
}

异常中常见的方法

1721027799867

自定义异常

意义:就是为了让控制台的报错信息更加的见名之意

①定义异常类

②写继承关系

③空参构造

④带参构造

File

  • File对象就表示一个路径,可以是文件路径、也可以是文件夹的路径
  • 这个路径可以是存在的,也可以是不存在的

绝对路径和相对路径

  • 绝对路径是带盘符的
  • 相对路径是不带盘符的,默认到当前项目下去找

常见构造方法

1721029476486

常见成员方法

1721029772427

1721029784861

1721030951311

1721030806529

1721031024289

1721031095100

1721029798334

  • 当调用者File表示的路径不存在时,返回null

  • 当调用者File表示的路径是文件时,返回null

  • 当调用者File表示的路径是一个空文件夹时,返回一个长度为0的数组

  • 当调用者File表示的路径是一个有内容的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回

  • 当调用者File表示的路径是一个有隐藏文件的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回,包含隐藏文件

  • 当调用者File表示的路径需要权限才能访问的文件夹时,返回null

  • 当调用者File表示的路径是一个有内容的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回

  • 当调用者File表示的路径是一个有隐藏文件的文件夹时,将里面所有文件和文件夹的路径放在File数组中返回,包含隐藏文件

  • 当调用者File表示的路径需要权限才能访问的文件夹时,返回null

1721029811621

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值