在java中,异常处理主要是由抛出异常和捕获异常两大元素组成。这两个元素就组成java程序控制流的非正常转移。
抛出异常分两种:显示和隐士。显示指的是在程序中通过throw关键字手动抛出的异常实例,他的主体是应用程序,而隐式指的是jvm执行过程中,碰到无法继续执行的异常状态,自动抛出的异常,他的主体是jvm。
捕获异常则涉及到try-catch-finally代码块
基本概念
在java中,所有的异常都是Throwable类或子类实例。Throwable有两个直接子类:Error和Exception。应用程序不应捕获Error,因为触发Error时,执行状态已经无法恢复,需要中止当前线程或者jvm。Exception里面有个特殊的东西叫做RunntimeException。表示程序虽然不能进行下去,但还可以抢救一下。RuntimeException和Error都是非检查异常。其他异常则属于检查异常。
原文:https://www.cnblogs.com/jiazhiyuan/p/13137739.html