2011-09-27 30 views
0

我很确定这是一个简单的方法,但我找不到直接的答案。我如何调用throws FileNotFoundException的方法?调用抛出FileNotFoundException的方法

这里是我的方法:

private static void fallingBlocks() throws FileNotFoundException 

回答

7

你调用它,要么宣布方法抛出太,或赶上它:

public void foo() throws FileNotFoundException // Or e.g. throws IOException 
{ 
    // Do stuff 
    fallingBlocks(); 
} 

或者:

public void foo() 
{ 
    // Do stuff 
    try 
    { 
     fallingBlocks(); 
    } 
    catch (FileNotFoundException e) 
    { 
     // Handle the exception 
    } 
} 

请参阅section 11.2 of the Java Language SpecificationJava Tutorial on Exceptions以获取更多信息苦恼的。

+0

嗨乔恩Skeet,有没有其他方式可以通过我可以实现相同? –

+0

@MadhuAvinash:不,你要么抓住例外,要么声明你的方法可能会抛出异常。就是那样子。 –

2

不知道如果我得到你的问题,只要调用方法:

try { 
    fallingBlocks(); 
} catch (FileNotFoundException e) { 
    /* handle */ 
} 
3

你只是把它作为你会调用任何其他方法,并确保你要么

  1. 渔获物和在调用方法中处理FileNotFoundException;
  2. 请确保调用方法的或它的超类在其throws列表中。
3

您只需catch该异常或重新抛出它。阅读关于exceptions

+0

+1为你的声望和真棒简历:P –

+1

好吧,至少答案应该是正确的,值得它:) – Bozho

+0

是的,当然;) –

2

是不是像调用一个正常的方法。唯一的区别是你必须通过在try..catch中包围它或通过从调用者方法抛出相同的异常来处理异常。

try { 
    // --- some logic 
    fallingBlocks(); 
    // --- some other logic 
} catch (FileNotFoundException e) { 
    // --- exception handling 
} 

public void myMethod() throws FileNotFoundException { 
    // --- some logic 
    fallingBlocks(); 
    // --- some other logic 
} 
2

你把它像任何其他方法了。但是该方法可能会失败。在这种情况下,该方法抛出异常。这个异常应该用try-catch语句来捕获,因为它会中断你的程序流。

相关问题