在java中哪些异常需要处理
1个回答
展开全部
可以选择三种方法来进行异常处理1对代码块用try..catch进行异常捕获处理;
2在 该代码的方法体外用throws进行抛出声明,告知此方法的调用者这段代码可能会出现这些异常,你需要谨慎处理。此时有两种情况: 如果声明抛出的异常是非运行时异常,此方法的调用者必须显示地用try..catch块进行捕获或者继续向上层抛出异常。 如果声明抛出的异常是运行时异常,此方法的调用者可以选择地进行异常捕获处理。
3在代码块用throw手动抛出一个异常对象,此时也有两种情况,跟2)中的类似: 如果抛出的异常对象是非运行时异常,此方法的调用者必须显示地用try..catch块进行捕获或者继续向上层抛出异常。 如果抛出的异常对象是运行时异常,此方法的调用者可以选择地进行异常捕获处理。 (如果最终将异常抛给main方法,则相当于交给jvm自动处理,此时jvm会简单地打印异常信息)
常处理和设计的建议
只在必要使用异常的地方才使用异常,不要用异常去控制程序的流程
切忌使用空catch块
检查异常和非检查异常的选择
注意catch块的顺序
不要将提供给用户看的信息放在异常信息里
避免多次在日志信息中记录同一个异常
异常处理尽量放在高层进行
在finally中释放资源
2在 该代码的方法体外用throws进行抛出声明,告知此方法的调用者这段代码可能会出现这些异常,你需要谨慎处理。此时有两种情况: 如果声明抛出的异常是非运行时异常,此方法的调用者必须显示地用try..catch块进行捕获或者继续向上层抛出异常。 如果声明抛出的异常是运行时异常,此方法的调用者可以选择地进行异常捕获处理。
3在代码块用throw手动抛出一个异常对象,此时也有两种情况,跟2)中的类似: 如果抛出的异常对象是非运行时异常,此方法的调用者必须显示地用try..catch块进行捕获或者继续向上层抛出异常。 如果抛出的异常对象是运行时异常,此方法的调用者可以选择地进行异常捕获处理。 (如果最终将异常抛给main方法,则相当于交给jvm自动处理,此时jvm会简单地打印异常信息)
常处理和设计的建议
只在必要使用异常的地方才使用异常,不要用异常去控制程序的流程
切忌使用空catch块
检查异常和非检查异常的选择
注意catch块的顺序
不要将提供给用户看的信息放在异常信息里
避免多次在日志信息中记录同一个异常
异常处理尽量放在高层进行
在finally中释放资源
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |