文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>java异常abc...

java异常abc...

时间:2010-08-13  来源:xiogjie_67

一、什么是异常呢?

      异常是java程序在运行期产生的错误。

二、异常会在哪些情况下产生?

      总的来说:在现实世界中充满了不良的数据和有问题的代码,这些都属于异常情况。

      通常在什么情况下产生呢?

      1、可能造成程序崩溃的错误输入

      2、设备错误

      3、物理限制

      4、代码错误

三、发生异常了,我们该如何来处理呢?也就是说,在java里面是如何来处理异常的呢?

      Java使用了一种称为异常处理的错误捕获机制进行处理。

四、什么是异常处理呢?

      异常处理就是用于处理程序错误的一种机制。比如说,访问数组时,给定下标超过数组下标的范围,这就是一种错误,就需要对程序代码进行修改,或者是对这种异常进行捕获。

五、异常对象是如何获取到值的呢?

      什么意思呢?就是我们经常做异常处理的时候,经常是catch(Exception e){statement}那么,这里面的e这个对象是怎么获取到值的呢?

      在java程序运行的时候,如果遇到了异常,java虚拟机即JVM会查看所有的catch语句块,找到与当前异常相匹配的异常处理类,或者是异常处理类的父类,如果JVM找到了之后,它就会自动去实例化这个异常类对象,在这个地方指的是我给出的e,当这个对象被实例化之后,我就当然可以用这个对象去调用这个异常处理类的方法,对当前遇到的异常进行处理了。

      上面说的这一堆话就是再说异常是怎么捕获的。

五、异常可以分为哪几类?

      简单分:

                1、未检查异常

                2、必查异常

       什么是未检查异常呢?

       就是说这种异常没必要让程序员去处理,有些时候,这种异常程序员也没法处理,比如说计算机突然断电,而我的程序还在运行,这种突如其来的动作,程序员是很难在程序中用代码去处理这种情况的,因为我并不知道计算机它什么时候断电啊。所以说,这种异常还是交给JVM去搞定,没必要由我们这些程序员去搞定。我想这就是未检查的意思吧,也就是说,没必要由我们程序员去处理的异常情况。

      什么是必查异常呢?

      必查异常,从字面上看就是必须检查的异常,把“检查”换成“处理”,也就是必须处理的异常,由谁来处理呢,当然是人啊,不可能是所有人,当然就是程序员了。也就是说必须由程序员处理的异常就是必查异常。

      例如:

      public static void main(String [] args){

          try{

              String [] s = new String[]{"abc","def","ghi"};

              System.out.print(s[4]);

          }catch(ArrayIndexOutOfBoundsException ex){

              ex.printStackTrace();

              System.out.println("数组下标越界了!");             

          }

      }

      程序代码运行的过程中,会出现下标越界异常,程序员是有能力对它进行处理的,也就是说必查异常就是程序员能够处理的程序错误。

 五、为什么要使用自定义异常?

       因为在程序中,可能会遇到任何标准异常类都没有能够充分描述清楚的问题,这个时候,我们就需要自己定义异常来描述问题。

六、如何自定义我们的异常呢?

     只需要让我们自己定义的异常类继承Exception或它的子类即可。

七、异常捕获是怎么回事儿?

     如果异常发生时没有在任何地方进行捕获,那么程序就会终止,并在控制台上打印出异常信息,包括异常类型与堆栈类容。

     如何来捕获异常呢?

     必须设置try/catch语句块。

     如果在try语句块中的任何代码抛出了一个在catch子句中声明那个异常,那么:

     1、程序会跳过try语句块其余的代码。

     2、程序将执行catch子句中异常处理类里面的代码

     3、如果try里面的代码没有抛出任何异常,那么程序将会跳过catch子句

     4、如果方法中的任何代码抛出了一个在catch子句中没有声明的异常类型,那么就会立刻退出这个方法。

八、对抛出异常的方法在重写时应该注意哪些问题?

     当重写一个抛出异常的方法时,子类抛出的异常类型必须与父类的异常类型一样,或者该异常类型的子类。

     

      

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载