异常处理是我们在学习java编程开发语言的时候需要解决的问题之一,下面我们就一起来了解一下java异常处理的方法都有哪些。
1、优先明确异常
你抛出的异常越明确越好,永远记住,你的同事或者几个月之后的你,将会调用你的方法并且处理异常。
因此需要保证提供给他们尽可能多的信息。这样你的API更容易被理解。你的方法的调用者能够更好的处理异常并且避免额外的检查。
因此,总是尝试寻找适合你的异常事件的类,例如,抛出一个NumberFormatException来替换一个IllegalArgumentException。避免抛出一个不明确的异常。
2、记录指定的异常
每当你在方法签名中指定异常,你也应该在Javadoc中记录它。这与上一个佳实践具有相同的目标:尽可能多地向调用者提供信息,以便避免或处理异常。
因此,请确保向Javadoc添加@throws声明并描述可能导致异常的情况。
3、使用描述性消息抛出异常
这个佳实践背后的想法与前两个类似。但这一次,你不会将信息提供给方法的调用者。每个必须了解在日志文件或监视工具中报告异常情况时发生了什么情况的人都可以读取异常消息。
因此,应该尽可能精确地描述问题,并提供相关的信息来了解异常事件。
不要误会我的意思,你不用去写一段文字。但你也应该在1-2个短句中解释异常的原因。这有助于你的运营团队了解问题的严重性,并且还可以让你更轻松地分析任何服务突发事件。
如果抛出一个特定的异常,它的类名很可能已经描述了这种错误。所以,你不需要提供很多额外的信息。一个很好的例子是NumberFormatException。当你以错误的格式提供String时,它将被java.lang.Long类的构造函数抛出。
4、不要捕获Throwable类
Throwable是所有异常和错误的超类。你可以在catch子句中使用它,但是你永远不应该这样做!
如果在catch子句中使用Throwable,它不仅会捕获所有异常,也将捕获所有的错误。JVM抛出错误,指出不应该由应用程序处理的严重问题。典型的例子是OutOfMemoryError或者StackOverflowError。两者都是由应用程序控制之外的情况引起的,无法处理。
所以,好不要捕获Throwable,除非你确定自己处于一种特殊的情况下能够处理错误。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!