四个的关系:
2、Exception 与 Erro 的区别:
Excetption:
1.可以是可被控制(checked) 或不可控制的(unchecked)
2.表示一个由程序员导致的错误
3.应该在应用程序级被处理
Error:
1.总是不可控制的(unchecked)
2.经常用来用于表示系统错误或低层资源的错误
3.如何可能的话,应该在系统级被捕捉
从上面我们已经看到两个的不同,Exception可以是可被控制或者不可控制的,所以Exception又分为两类,checked Exception 和 unchecked Exception 两种,说说这两种的区别,打个比方,我这个人就相当于程序,我两天没睡觉特别虚弱,一天没吃饭很饿,这个时候我个人的这种状态都在告诉我自己,提醒我自己正在处于一个什么状态,我可以随时解决掉,这种就是checked Exception 可控制的异常,一般往往是try catch 来捕获,就是我刚刚说的提醒的意思,但是unchecked Exception 是不可控制的,就像我这个人生病一样,癌症啊,发烧,这种必须瞧病,不然就死了,所以这种情况下必须解决掉,像NullPointException 这种空指针异常,OutOfException 下标越界等等异常都会使程序无法进行下去。
如果还不懂看这篇博客:
http://blog.youkuaiyun.com/liuj2511981/article/details/8524418