您的位置:首页 > 编程语言 > Java开发

Java知识碎片整理(2)——异常处理

2016-10-06 13:14 253 查看
2016/10/6

异常是一个程序执行期间发生的事件,它中断了正在执行的程序的正常指令流。

在Java中,异常被封装到了一个类中,当程序出现错误时,会创建一个异常对象并把它传递给正在运行的系统,从而触发异常处理机制。这样可以将程序主逻辑和异常处理代码分离开。

异常捕捉机制

Java异常捕捉结构:try,catch,finally

try{
//可能发生异常的主逻辑代码
}
catch(Exceptiontype1 e){
//发生Exceptiontype1的处理
}
catch(Exceptiontype2 e){
//发生Exceptiontype2的处理
}
finally{
//无论try块代码如何退出都会执行的程序块
}


catch块常用方法:

e.getMessage();
e.toString();
e.printStackTrace();


常见异常:

ClassCastException:类型转换异常

ClassNotFoundException:未找到相应类异常

ArithmeticException:算术异常

ArrayIndexOutOfBoundsException:数组下标越界异常

ArrayStoreException:数组中包含不兼容的值抛出的异常

SQLException:操作数据库异常

NullPointerException:空指针异常

NoSuchFieldException: 字段未找到异常

NoSuchModelException: 方法未找到异常

NumberFormatException:字符串转化为数字抛出的异常

NegativeArraySizeException: 数组元素为负数异常

StringIndexOutOfBoundsException:字符串索引超出范围抛出异常

IOException: 输入输出异常

IllegalAccessException:不允许访问某类异常

InstantiationException:newInstance()方法是实例化失败异常

EOFException:文件已结束异常

FileNotFoundException:文件未找到异常

自定义异常

public class MyException extends Exception{
public MyException(String ErrorMessage){
super(ErrorMessage);
}
}


抛出异常

throws——throw

throws关键字通常用于声明方法时,用来指定可能抛出的异常,多个异常可用逗号分隔。throw关键字通常用于方法体中,抛出一个异常对象。

例子:

public class Shoot{
static void divide(int x,int y) throws ArithmeticException{
if(y==0) throw new ArithmeticException;
return x/y;
}
public static void main(String[] args){
try{
divide(3,0);
}catch(ArithmeticException e){
System.out.println("除数不能为0");
}
}
}


2017/2/3批注:

非常基础的知识,get
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java