12.1概念
发现错误的理想时机是在编译阶段,也就是在你试图运行程序之前,然而编译期间并不能找出所有的错误,余下的问题必须在运行期间解决。这就需要错误源能通过某种方式,把适当的信息传递给某个接收者----该接收者将知道如何正确处理这个问题。--------这句话也就是说java其实是提供了一种机制使用户能够正确的处理错误。
改进的错误恢复机制是提供代码健壮性的最强有力的方式---错误恢复机制自己理解着其实就是当错误发生时我们要求程序做什么样的处理。java使用异常来提供一致的错误报告模型,使得构建能够与客户端代码可靠的沟通问题。
java中的异常处理的目的在于通过少于目前数量的代码来简化大型、可靠的程序的生成,并通过这种方式使你更加自信:你的应用中没有未处理的错误。
异常机制是在什么情况下出现的:
1、c以及其他早期语言常常具有多种错误处理模式,这些模式往往建立在约定俗成的基础上,并不属于语言的一部分。通常会返回某个特殊值或者设置某个标志,并且假定接收者将对这些个返回值或标志进行检查,以判定是否发生了错误。然而随着时间的推移,程序员在使用程序库的时候会认为“这是别人发生的错误,与我无关”---呵呵,对的,很多程序员都有这种想法,这就导致了程序员不再去检查错误。
2、和第1种相反,确实在每次调用方法的时候都去彻底的进行错误检查了,但是这个时候代码会变的很难阅读---因为此时你在代码中加了很多的复杂的逻辑,为了保证错误发生时能够正常运行
解决上面的办法是:用强制规定的形式消除错误处理过程中随心所欲的因素。另一个明显的好处就是往往能够降低错误处理代码的复杂度。解决了上面的两个问题。----另外从代码结构上来说,这种异常机制能够把“描述在正常执行过程中做什么事”和“出了问题怎么办”的代码相分离。
12.2基本异常