主页 > 知识库 > 网络编程 > JSP/Java >

JAVA基础 之异常(2)

来源:中国IT实验室 作者:佚名 发表于:2013-07-12 12:09  点击:
* java7之前 我们都是使用finally来处理这类的问题,无论是否发生异常都要执行的操作 * java7开始,AutoCloseable接口可以不必使用finally来处理这个问题(如果有时间我会写一篇相关的文章) */ fis = new FileInpu

* java7之前 我们都是使用finally来处理这类的问题,无论是否发生异常都要执行的操作
    * java7开始,AutoCloseable接口可以不必使用finally来处理这个问题(如果有时间我会写一篇相关的文章)
    */
    fis = new FileInputStream("cxy.txt");
    } catch (FileNotFoundException e1)
    {
    e1.printStackTrace();
    }finally
    {
    try
    {
    fis.close();
    } catch (Exception e)
    {
    //呵呵 包括这里都套着一个try,因为 程序怕遇到fis是null 或者 io异常
    e.printStackTrace();
    }
    }
    System.out.println("=======================");
    //自定义异常类
    try
    {
    throw new MyException("中文异常信息");
    } catch (MyException e)
    {
    e.printChineseMsg();
    }
    System.out.println("虽然有很多异常,但是我正常完结了~");
    }
    /** 提前声明 我这个方法可能会抛出什么样的异常,请调用者自己处理
    */
    public static void test() throws NullPointerException
    {
    throw new NullPointerException(); //抛出一个null异常
    }
    }
    //自己定义的异常
    class MyException extends Exception
    {
    public MyException(){}
    public MyException(String msg)
    {
    super(msg);
    //当然 这里你可以加一些日志的操作
    }
    /**
    * 我们期望的能看懂的中文异常信息
    */
    public void printChineseMsg()
    {
    System.out.println("异常信息:"+this.getMessage());
    }
    }

有帮助
(0)
0%
没帮助
(0)
0%