参考:
http://blog.csdn.net/hguisu/article/details/6155636
http://www.cnblogs.com/lyting/p/5776997.html
1、异常整理
一般java异常分为error和exception。两者都是Throwable的子类。
其中error包含一些虚拟机等内部错误。
而exception则可以再细分为runtimeException和checkedException。
其中runtimeException相当于c++的logic_error
其中runtimeException和checkedException都可以被try-catch。
其中不同的是checkedException一旦不被try-catch,那么必须在方法签名里throws该异常。而runtimeException则是可以不加上throws关键字来抛出。但是在程序运行时,会直接抛出该异常。