刚写了一段,本来想阐述自己不懂异常,但是写着写着,异常的概念却渐渐清晰了。
现在就结合书上的叙述,简明的写下笔记吧,至少等后面异常的概念在脑海里快消失的时候,看看自己的随笔,能快速理解吧。
//************************************************************************************************//
我觉得我们需要去理解下C语言或者C++是怎么处理异常的;然后和Java的异常机制做个对比,我们就可以理解Java异常机制带来的方便。
Java中包含三类"异常",包括: (可先看此页http://www.cnblogs.com/yzdqxing/p/3896264.html)
1、Error(及其衍生类):通常是指Java的内部错误以及如资源耗尽的错误。当Error(及其衍生类)发生时,我们不能在编程层面上解决Error,所以应该直接退出程序。
2、RuntimeException(及其衍生类):是Java程序自身造成的,也就是说,因程序员在编程时犯错而产生的。RuntimeException完全可以通过修正Java程序避免。
3、检查异常:这些类是由编程与环境互动造成程序在运行时出错。
异常对象在系统运行过程中自动创建,当然所创建的异常对象的类型是根据不同异常而有差异的,系统会把出现异常的具体信息以及导致异常的原因写在这个对象中。
今天我得出了一个学习的方法,比如我们学习Java异常:
我们必须提出以下几个问题,然后解决它们:
1、为什么要有异常这东西?
2、异常机制有什么好处,有什么坏处?
3、我们要怎么使用异常?
4、在使用异常的时候我们需要注意些什么?
以下是我的回答:
1、每个人都不是完美的,所以写出的代码不一定是完美的,因此需要异常处理机制;
《java编程思想》里的一段话:发现错误的理想时机是在编译阶段。然而,编译期间并不能找出
所有的错误,雨下的问题必须在运行期间解决。这就需要错误源能通过某种方式,把适当的信息
传递给某个接收者----如此,接收者将知道如何正确处理此异常。