java零基础的坎坷之路【42】——异常处理2

1、throws和throw的区别:
	
	throws:
		用在方法声明后面,跟的是异常类名
		可以跟多个异常类名,用逗号隔开
		表示抛出异常,由该方法的调用者来处理
		throws表示出现异常的一种可能性,并不一定会发生这些异常
		
	throw:
		用在方法体内,跟的是异常对象名
		只能抛出一个异常对象名
		表示抛出异常,由方法体内的语句处理
		throw则是抛出了异常,执行throw则一定抛出了某种异常
		
2、处理异常的原则;
	功能内部可以处理、或者后续需要继续执行,就用try,否则就throws抛出。
	
3、finally的特点:

	finally语句体内的代码一定执行
	特殊情况,执行到finally之情,jvm退出了则不执行
	
4、finally的作用:
	用于释放资源
	
5、finally相关面试题:
	①、final和finally、finalize的区别?
		final:方法、类、变量的修饰符
				修饰类,类不能被继承
				修饰方法,方法不能被重写
				修饰变量,变量是常量
		finally:异常处理的一部分,用于释放资源
		finalize:Object类的一个方法,用于垃圾回收
		
	②、如果catch里面有return语句,请问finally的代码还会执行吗?
		会执行,在return之前
		
6、异常注意事项:
	
	子类重写父类方法时,子类的方法必须抛出和父类相同的异常或者父类异常的子类
	如果父类抛出了多个异常,子类重写父类时,只能抛出相同的异常或它的子集,子类不能抛出父类没有的异常
	如果被重写的方法没有异常抛出,那么子类的方法不可以抛出异常,如果子类方法内有异常,只能try,不能throws

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明致成

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值