欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

Java 异常处理,

来源: javaer 分享于  点击 23620 次 点评:201

Java 异常处理,



    异常产生后,如果不做任何处理,程序就会被终止。Java的异常处理使程序不会因为一个异常而影响整个程序的执行。

Java捕获异常

    Java的异常捕获结构由try、catch和finally3部分组成。

     try
     {
         //代码段(可能发生异常的代码)
     }catch(异常类型1 ex)
     {
         //对异常处理的代码段    
     }catch(异常类型2 ex)
     {
         //对异常处理的代码段
     }catch(异常类型3 ex)
     {
         //对异常处理的代码段
     }
     . 
     .
     .catch(异常类型n ex)
     {
         //对异常处理的代码段
     }finally
     {
         //总要执行的代码段
     }

通常,异常处理常用一下3个函数来获取异常的有关信息:

以下4种情况下,finally块不会被执行

Java常见异常

常见的异常类
异常类 说明
ClassCastException 类型转换异常
ClassNotFoundException 未找到相应类异常
ArithmeticException 算术异常
ArrayIndexOutOfBoundsException 数组下标越界异常
ArrayStoreException 数组中包含不兼容的值抛出的异常
NullPointerException 空指针异常
NoSuchFieldException 字段未找到异常
SQLException 操作数据库异常
NoSuchMethodException 方法未找到抛出的异常
NumberFormatException 字符串转换为数字抛出的异常
NegativeArraySizeException 数组元素个数为负数抛出的异常
StringIndexOutOfBoundsException 字符串索引超出范围抛出的异常
IOException 输入输出异常
IllegalAccessException 不允许访问某类异常
InstantiationException 当应用程序试图使用Class类中的newinstace()方法创建一个累的实例,而指定的类对象无法被实例化时,抛出该异常
EOFException 文件已结束异常
FileNotFoundException 文件未找到异常

自定义异常

     Java内置的异常类可以描述在编程时出现的大部分异常情况,除此之外,用户只需集成Exception类即可自定义异常。

    自定义异常的步骤:

代码示例:

 

public class MyException extends Exception{    //创建自定义异常,继承Exception类
         public MyException(String ErrorMessage)  {//构造方法
                  super(ErrorMessage);   //父类构造方法
         }
 }

public class Tran{
     //定义方法,抛出异常
     static int avg(int number1, int number2) throws MyException {
          if (number1<0 || number2<0) {         //判断方法中的参数是否满足指定条件
              throw new MyException("不可以使用负数");  //错误信息
          }
          if (number1>100 || number2>100) {
              throw new MyException("数值太大了");
          }
          return (number1 + number2)/2;
     }
    public static void main(String[] args){
           try{
                 int resullt = avg(102, 150);
                 System.out.println(resullt);
            } catch(MyException e){
                   System.out.println(e);
            }
 }



相关文章

    暂无相关文章
相关栏目:

用户点评