java -- 异常处理(2)

来源:互联网 发布:mac 能用的刻录机 编辑:程序博客网 时间:2024/05/23 23:51

java ---异常处理(2)

3,将异常抛给调用者,让调用者去处理异常。throws(不建议这种处理方式)

   案例:

class Father

{

   privateSonson= null;

   

   publicFather()

   {

    son =new Son();

   }

   

   publicvoid  test1()

   {

    System.out.println("1");

    son.test2();

   }

}

 

class Son

{

   publicvoidtest2()

   {

    FileReader fr =new FileReader("d:\\dd.text");

   

   }

}

从这个程序来看,Son中的方法显然是打不开这个文件的,所以此时,将这个异常抛出,由调用者来,如果是父亲调用,那么就是父亲类解决问题,如果父亲不解决,那么就是java虚拟机处理这个问题,但是只是报错,不会说错误在哪里。

父亲解决方案

class Father

{

   privateSonson= null;

   

   publicFather()

   {

    son =new Son();

   }

   

   publicvoid  test1()

   {

    System.out.println("1");

    try{

   

       son.test2();

    } catch(Exceptione){

        System.out.println("父亲处理");

        e.printStackTrace();

    }

   

   }

}

 

class Son

{

   publicvoidtest2()throwsException

   {

    FileReader fr =new FileReader("d:\\dd.text");

   

   }

}

 

1 0
原创粉丝点击