含泪总结,Java中异常处理机制(二)

前章回顾
上一篇内容,我们回顾了大致的异常处理机制的知识体系框架,从而对于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:异常的脑图制作非常不易!但我仍然选择免费与大家分享!搭配脑图食用文章它不香吗?冲冲冲!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
回答: 在美团的Java外包面试,面试官可能会问到一些关于待遇、加班情况、项目经验以及部门情况的问题。他们可能会询问你在项目做了什么,使用了哪些技术和架构。他们还可能问你所面试的部门是什么,并且会让你保持电话畅通。\[1\] 此外,面试可能会涉及到接口的概念。接口是一组规范,定义了一些方法的规则,但没有具体的方法实现。它可以用来约束类的行为,实现类需要实现接口定义的方法。在Java,可以使用关键字"interface"来定义接口,类可以通过实现接口来实现接口定义的方法。\[2\] 在面试,还可能会涉及到Lambda表达式的概念。Lambda表达式是一种简化匿名内部类的写法,可以用来实现函数式接口的抽象方法。Lambda表达式可以简化代码,使代码更加简洁易读。\[3\] 希望这些信息对你有帮助,祝你面试顺利! #### 引用[.reference_title] - *1* [Java渣渣外包开发3年,4面终揽下美团,含泪拿到22koffer](https://blog.csdn.net/bieber007/article/details/111402943)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [2022美团秋招java面试流程,技术面题解析 看完吊打面试官](https://blog.csdn.net/Cr1556648487/article/details/126191196)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值