前章回顾
上一篇内容,我们回顾了大致的异常处理机制的知识体系框架,从而对于Java异常处理机制已经有了大致的框架体系,从而在这章中我们将继续深入学习throw和throws的使用
1.前章回顾:
1.1:含泪总结,Java中的异常处理机制(一)
1.2:含泪总结,Java中的异常处理机制思维导图笔记,免费!
看过上一篇文章的小伙伴,应该是有了不少收获,毕竟作为小白,当然内心非常懂得咱们小白内心的想法的。接下来我会一一介绍Java中异常处理机制的知识盛宴!不要走开,精彩马上就来!
1.throw和throws这两个关键字,想必大家肯定不会陌生,但是到底该如何使用?这却让大家着实犯难,不要慌!了夏同学带你领略它们的风骚。先看看他们的大致用途:
1.1
throw:用于抛出异常对象
format:throw new ExceptionName();
位置:方法体中
1.2
throws:用于抛出异常
位置:方法标签中,参数列表后
feature:能够一次性抛出多个异常,异常之间使用逗号间隔
2.throw和throws大多数情况下是同时出现的,从而有种相辅相成的味道,毕竟通常我们为了程序中的异常能够一抛到底,从而大多数情况是将两者同时运用的!但是针对不同的情况,我们也会将抛出的异常使用try语句将其捕捉,而并非将它一抛到底!
自定义Person类描述:
1.1拥有两个属性,name和age
1.2有构造方法,以及针对每个属性的setter和getter方法
3.一抛到底Demo:
3.1Person类中setAge方法:
3.2调用函数中的用法:
3.3结果Demo:
解释:很明显,对于设置年龄时,我们进行了一定的判断,从而将赋值年龄保持在一额合适的范围。并且希望在错误的情况下,能够将程序中的异常直接抛出,并不想让调用该方法下面的程序继续运行。这也是一抛到底的场景运用
4.捕捉与throw以及throws的Demo:
场景描述:实例化多个对象后,发现年龄输入有误,调用setAge方法,对于多个对象的年龄进行改写,其中年龄涉及到了一定的错误,但希望不影响它下面的程序继续运行!
4.1setAge方法参考:3.1
4.2调用函数Demo:
4.3结果Demo:
解释:很明显的发觉到,在p2调用setAge方法使用错误参数会产生相应的异常,从会被try语句进行捕捉,从而不会影响到接下来的程序运行,从而我们仍然可以看到程序仍然在输出,并不以往终止!
巩固旧知:try语句中检测异常的code,一旦出现了异常的代码,它下面的代码就不再运行!看王五的年龄明明在调用了方法进行改写,却最终的结果仍然是实例化时的结果,从而印证了这一点!
关于如何使用异常处理:
原则上是:功能内部可以将问题处理,用try,处理不了,交给调用者,这时用throws
区别:
后续程序需要继续运行就用try
后续程序不需要继续运行用throws
总结:
经过两篇文章的学习,想必大家心中也有了关于异常的大致印象!从而我仍然会快马加鞭,持续的退出接下来的内容更新,比如自定义异常以及try语句的嵌套使用,从而让大家能够在异常这一方面有所收获!
ps:异常的脑图制作非常不易!但我仍然选择免费与大家分享!搭配脑图食用文章它不香吗?冲冲冲!