- 编译时异常
- 运行时异常
异常捕捉:try…catch…fifinally,异常抛出:throws。
3.如何自定义一个异常继承一个异常类,通常是RumtimeException或者Exception
4.try catch fifififinally,try里有return,fifinally还执行么?执行,并且finally的执行早于try里面的return
结论:不管有木有出现异常,finally块中代码都会执行;
-
NullPointerException(空指针异常)
-
IndexOutOfBoundsException(数组越界)
-
ArrayStoreException(数据存储异常, *** 作数组是类型不一致)
-
ClassCastException(类转换异常)
-
Bu?erOver?owException
-
IOException
-
FileNotFoundException
-
SQLException
- 位置不同
- throws 用在函数上,后面跟的是异常类,可以跟多个;而
- throw 用在函数内,后面跟的
- 功能不同:
- throws 用来声明异常,表示该功能可能出现的问题,需预先给出处理方式;
- throw 抛出具体的问题对象,执行到 throw,功能就已经结束了
- throw 语句独立存在时,下面不要定义其他语句,因为执行不到。
- throws 表示出现异常的一种可能性,并不一定会发生这些异常;throw 则是抛出了异常,执行 throw 则一定抛出了某种异常对象。
- 两者都是消极处理异常的方式,只是抛出或者可能抛出异常,但是不会由函数去处理异常,真正的处理异常由函数的上层调用处理。
- Error和Exception都是java错误处理机制的一部分,都继承了Throwable类。
- Exception表示的异常,异常可以通过程序来捕捉,或者优化程序来避免。
- Error表示的是系统错误,不能通过程序来进行错误处理。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)