Java 如何在语句中添加'throws IOException'
我正试图从Java 如何在语句中添加'throws IOException',java,io,ioexception,Java,Io,Ioexception,我正试图从HighestScoreFile.java实现一个类,编译时,出现以下错误: ...MemoryGame.java:211: error: unreported exception IOException; must be caught or declared to be thrown HighestScoreFile.HighestScoreFile(input, hours, minutes, seconds, click);
HighestScoreFile.java
实现一个类
,编译时,出现以下错误:
...MemoryGame.java:211: error: unreported exception IOException; must be caught or declared to be thrown
HighestScoreFile.HighestScoreFile(input, hours, minutes, seconds, click);
^
1 error
在实现这个HighestScoreFile.java
之前,我已经使用main
类进行了测试
public static void main(String[] args) throws IOException
{
HighestScoreFile("abcdefg", 12, 13, 14, 30);
}
HighestScoreFile.java
用于将数据保存到Highest.txt
中
但是当我使用下面的代码实现另一个.java
时,它显示了这个错误
HighestScoreFile.HighestScoreFile(input, hours, minutes, seconds, click);
如何解决此问题?您需要将
抛出IOException
添加到最高分文件的声明中您的代码试图抛出另一个错误而不是IOException,但您没有捕获它。错误消息说明了一切:被调用的方法可能抛出IOException
,必须捕获或声明要抛出的
因此,要么将调用包装在一个try catch
块中,要么声明调用方方法也抛出IOException
。要么将异常声明为在方法中抛出(在新java文件的方法中抛出IOException)或者用try/catch块包围它您需要将异常抛出方法之外:
public void someMethod() throws IOException
{
// ...
HighestScoreFile.HighestScoreFile(input, hours, minutes, seconds, click);
// ..
}
或者抓住例外:
try
{
HighestScoreFile.HighestScoreFile(input, hours, minutes, seconds, click);
}
catch (IOException ex)
{
// handle the exception
}
我建议您按照说明去做。谢谢。我忘记了try..catch
方法。我现在正在使用它。在文件HighestScoreFile.java
中的方法,我已经将抛出IOException
,但是它需要也在实现的文件中抛出IOException
。谢谢。我正在使用try..catch
方法,它工作正常。