5.31日作业
异常相关问题:
1、try..catch. .finally的执行顺序?
答:程序运行,先执行try语句代码,若无异常,catch语句不执行,执行finally语句,若有异常,
先执行catch语句,再执行finally语句。
2、受检异常和非受检异常是什么意思,有什么区别?
答:受检异常:即编译期异常,指编译时就能检测到,需要处理的异常;
非受检异常:即运行期异常,指程序运行时才能出现的异常;
区别:受检异常编写代码时就能检测到,非受检异常编写代码不能,只能在程序运行时出现。
3、异常和错误的类结构是?
答:异常:Serializable接口——>Throwable类--------》Exception类----》子类
错误:Serializable接口——>Throwable类--------》Error类-----》子类
4、异常的产生有几种情况?
答:1、因为硬件、网络等外部原因导致的“谓设",如内存溢出.
2、因为环境导致的异常,如读取文件时,文件不存在..
3、因为代码逻辑而出现的异常,如0除、数组越界,空指针异常等。
4、满足某些条件,执行了throw语句而产生的异常,这叫抛出异常(throw).
5、throw和throws的区别是?
答:throw是抛出一个异常对象;throws是抛出一个异常类
6、什么情况下需要使用自定义异常?
此时使用自定义异常的目的(好处)是?
答:在没有Java所拥有的异常类的情况下,可以自定义异常
好处:可以让自己定义并抛出,将问题留给Java虚拟机去处理。
7、谈谈异常对程序的执行流程的影响?
答:可能会中断程序执行;
8、发生异常时,常见有3种方式,分别是?
每种处理方式的使用场景是?
答:1.抛出异常 让虚拟机处理的场景;
2.捕获异常 如输入输出异常;
3.先捕获异常,再抛出异常。

浙公网安备 33010602011771号