public void test() {
    try {
       ...
    } catch () {
       ...
    }
}想知道 在调用 test() 方法的时候还需要try catch 吗?我看老师讲的时候 ,调用 test()方法的时候,直接写的try {
  test()
} finally {
   ...
}没有写 catch 语句。实在想不明白

解决方案 »

  1.   

    不用写,  你想别人 在调用 你的方法的时候  try的话可这样写   public void test() throws Exception
    {
     }
      

  2.   

    调用的话直接写test()就可以了,
    也不用写什么try { 
      test() 
    } finally { 
      ... 
    } ,
    因为test()本身的方法就已经对可能产生的异常进行处理了,你们老师采用的写法有点误导人。
      

  3.   

    他既然已经把test()中可能出现的异常封装了,为什么要在调它的时候再写次try()...
    可以直接调用test()就可以了
      

  4.   

    你老师写的时候,finally块写了些什么东西?
      

  5.   

    这样就是强制调用它的人用try了
      

  6.   

    异常已经被catch捕捉了
    所以调用的时候就不用写了
      

  7.   

    同意,test()本身已经做过了异常处理了,而且test方法本身也没有用throws关键字抛出异常,所以你老师的写法纯属多余。
      

  8.   

    test()本身已经做过了异常处理,那就不需要了。
      

  9.   

    总之,在调用 test() 方法 的时候 不用再次 try ...
    因为,在你的test()方法里已经做了异常处理,与就是说,你的test方法里不会有 Exception 抛出,所以在调用的时候不必多此一举。
    记住,只有当被调用的方法会有Exception 抛出时,在调用时 用 try...才有用
      

  10.   

    不要死读书,不要觉得老师的做法永远是最好的,最优的try{
     ...
     ...
    }
    try包围的代码部分如果有可能抛出异常,才需要catch去捕获它,如果没有任何机会抛出任何的异常,那就不需要用try..catch,用了当然也没错,只是没有必要使用
      

  11.   

    我倒是很想知道,你的老师try  test()干嘛呢?
      

  12.   

    你已经在test()方法中catch捕获异常了
    在调用的时候直接掉用就是了
      

  13.   

    public void test() { 
        try { 
          ... 
        } catch () { 
          ... 
        }            //这里没有finally语句,老师在调用时给补回来了.

    try { 
      test() 
    } finally { 
      ... 

      

  14.   

    test方法中的 try...catch块,如果try所包含的语句中,有的方法还有一个或多个没有处理的异常,catch的异常参数应该与try中的未处理的异常的其中一个一致,而且try后面的catch块的个数应该与try语句块中的未处理异常的种类的个数一致。
        如果一个方法体中有未处理异常的语句,且未用try...catch块捕获,则需要在该方法中抛出异常声明。
        在调用一个方法的时候,如果该方法没有抛出异常声明,一般情况下,不用写try...catch捕获,但有些时候,为了代码安全,必须自己手动捕获,写可以被自己捕获的运行时异常。
        寡人是初学者,希望才子指点。
    finally那样用,老师倒是没讲过,学习了!
      

  15.   

    不写Catch意味着Exception 会继续向上抛,但是它会执行 finally 里面的代码
      

  16.   

    test()本身已经做过了异常处理,那就不需要了。
      

  17.   

    这个要看的。如果你的方法是被检查类型异常一定会强制要你TRY CATCH

    我估计你老师的情况是她懒的写catch,他这样的做法是不对的。