异常:
异常通常分为运行时异常和受检异常(编译时异常),受检异常需要强制性try{}catch(){}。
常见的一些异常有:
ClassCastException 转型异常
ArrayIndexOutOfBoundsException 下标越界
ArithmetException 算术异常
NullPointerException 空指针异常
捕获异常的语句:
try{ }catch(){ }finally{ } // 其中finally是始终会运行的
// 当try块中没有异常的时候,try块运行完之后跳过catch块,直接运行后面的语句。
// 当try块中有异常的时候,try块运行到异常语句,直接跳到catch块中。
如果在try块中有多个不同类型的异常需要捕获:
1.直接捕获异常父类Exception就可以了
2.多个异常依次捕获,多个catch块
2.1多个异常依次驳货,需要注意异常的顺序问题,父类异常应该在最后处理
2.2多个异常捕获,只会进入其中一个异常
3.try catch都是单独的语句块
抛出异常:
如果要声明一个异常要用到throws来声明写在方法名后方
package org.axc.com.Action; import java.lang.Exception; public class TestException { public static void count(int x) throws MyException{ if(x>0) { throw new MyException("发生了自定义的异常"); } }