Java学习笔记之异常处理

  

本文实例为大家分享了Java异常处理的具体代码,供大家参考,具体内容如下

  

<强>一。异常的分类

  

1。由Java虚拟机抛出的异常(错误):程序无法处理的问题,用户不用去进行处理(虚拟机错误丶内存溢出错误丶线程死锁)

  

2.异常异常:程序本身可以进行处理的异常

  

1)。非检查异常(未经检查的异常):编译器不需要强制处理的异常(空指针异常丶数组下标越界异常丶算数异常丶类型转换异常)

  

2)。检查异常(受控异常):编译器需要强制处理的异常(IOException丶SQLException异常),

  

<强>二。异常处理的两种方法

  

1。通过尝试丶捕获和最后关键字在当前位置进行异常处理

        公共静态void main (String []) {   int和=0;   而(真){   {//试以两数相除除数不能为0进行举例   System.out.println(“请依次输入两个数值进行除法操作:”);   扫描仪扫描仪=new扫描仪(系统);   Java int alt="学习笔记之异常处理">

  

2。通过尝试丶抓住最后丶丶和抛扔扔出异常给函数调用者进行处理

        公开课尝试{   公共静态void main (String []) {   尝试{   函数();//在函数调用者处对异常进行处理   }捕捉(异常e)   {   e.printStackTrace ();   }   }   静态void函数()抛出异常{//通过扔将异常进行抛出      System.out.println(“请输入一个数值进行判断:”);   扫描仪扫描仪=new扫描仪(系统);   Java int alt="学习笔记之异常处理">

  

3。自定义异常进行处理

        类MyException扩展异常{//自定义异常,通过超级方法传递异常信息给父级   公共MyException () {   超级(“这是我自定义的异常”);   }   }      公开课尝试{   公共静态void main (String []) {   尝试{   函数();   }捕捉(MyException e)   {   e.printStackTrace ();   }   }   静态void函数()抛出MyException {      System.out.println(“请输入一个数值进行判断:”);   扫描仪扫描仪=new扫描仪(系统);   Java int alt="学习笔记之异常处理">

  

<强>三。异常链

  

有的时候我们会在处理一个异常的时候抛出一个新的异常,也就是异常的嵌套,但是最后我们得到的异常信息却只有一个。

  

示例:         公开课尝试{   公共静态void main (String []) {   尝试{   Function1 ();   }捕捉(异常e)   {   e.printStackTrace ();   }   }   静态孔隙Function1()抛出异常{   尝试{   Function2 ();   }捕捉(异常e) {   抛出新的异常();   }   }   静态孔隙Function2()抛出异常{   尝试{   Function3 ();   }捕捉(异常e) {   抛出新的异常();   }   }   静态孔隙Function3()抛出异常{   抛出新的异常();   }   }   之前      

输入结果:

  

癑ava学习笔记之异常处理"

  

这样的话显示出的异常就只有一个了,那我们如果想让这条异常链中的所有异常信息全部输出该怎么办呢& # 63;方法很简单,我们在抛出异常的时候将异常对象也当作参数进行抛出就行了。

  

示例:         公开课尝试{   公共静态void main (String []) {   尝试{   Function1 ();   }捕捉(异常e)   {   e.printStackTrace ();   }   }   静态孔隙Function1()抛出异常{   尝试{   Function2 ();   }捕捉(异常e) {   抛出新的异常(“异常2”,e);   }   }   静态孔隙Function2()抛出异常{   尝试{   Function3 ();   }捕捉(异常e) {   抛出新的异常(“异常2”,e);   }   }   静态孔隙Function3()抛出异常{   抛出新的异常(“异常3”);   }   }   之前      

运行结果:

  

癑ava学习笔记之异常处理"

  Java中

到此,我们的异常便是描述完了。

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

Java学习笔记之异常处理