Java知识碎片整理(2)——异常处理
2016-10-06 13:14
253 查看
2016/10/6
异常是一个程序执行期间发生的事件,它中断了正在执行的程序的正常指令流。
在Java中,异常被封装到了一个类中,当程序出现错误时,会创建一个异常对象并把它传递给正在运行的系统,从而触发异常处理机制。这样可以将程序主逻辑和异常处理代码分离开。
catch块常用方法:
ClassNotFoundException:未找到相应类异常
ArithmeticException:算术异常
ArrayIndexOutOfBoundsException:数组下标越界异常
ArrayStoreException:数组中包含不兼容的值抛出的异常
SQLException:操作数据库异常
NullPointerException:空指针异常
NoSuchFieldException: 字段未找到异常
NoSuchModelException: 方法未找到异常
NumberFormatException:字符串转化为数字抛出的异常
NegativeArraySizeException: 数组元素为负数异常
StringIndexOutOfBoundsException:字符串索引超出范围抛出异常
IOException: 输入输出异常
IllegalAccessException:不允许访问某类异常
InstantiationException:newInstance()方法是实例化失败异常
EOFException:文件已结束异常
FileNotFoundException:文件未找到异常
throws关键字通常用于声明方法时,用来指定可能抛出的异常,多个异常可用逗号分隔。throw关键字通常用于方法体中,抛出一个异常对象。
例子:
2017/2/3批注:
非常基础的知识,get
异常是一个程序执行期间发生的事件,它中断了正在执行的程序的正常指令流。
在Java中,异常被封装到了一个类中,当程序出现错误时,会创建一个异常对象并把它传递给正在运行的系统,从而触发异常处理机制。这样可以将程序主逻辑和异常处理代码分离开。
异常捕捉机制
Java异常捕捉结构:try,catch,finallytry{ //可能发生异常的主逻辑代码 } 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——throwthrows关键字通常用于声明方法时,用来指定可能抛出的异常,多个异常可用逗号分隔。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基础知识记录--异常 (摘自张孝祥整理java面试题)
- JAVA基础知识之多线程——线程组和未处理异常
- Java 异常的知识整理
- java异常与错误处理基本知识
- java知识总结(十一)异常处理机制
- 黑马程序员 Java基础知识总结-异常处理
- python基础知识整理——错误以及异常处理
- Thinking in Java 整理笔记:通过异常处理错误
- JAVA中的异常处理相关知识
- Java基础知识之异常处理机制
- Java知识碎片整理(1)——数组相关
- 黑马程序员-java Exception异常个人知识整理
- 知识学习——Java异常处理
- HTTP网络连接相关知识整理(六):分发处理根异常
- 关于Java异常处理的几条建议_动力节点Java学院整理
- Java基础知识整理之异常篇
- 黑马程序员---java基础知识(五):异常及处理
- 有关Java 异常处理中的知识总结
- 黑马程序员_Java第18天知识总结_System类_Runtime类_Date_Calendar_Math_Random_InputStream_OutputStream_IO异常的处理
- Java中异常处理机制(两篇文章,待整理)