安卓(或许是Java)不熟悉;扔;使用
我在Android示例代码中发现了一个不熟悉的“throws”用法,如下所示安卓(或许是Java)不熟悉;扔;使用,java,android,function,exception,throws,Java,Android,Function,Exception,Throws,我在Android示例代码中发现了一个不熟悉的“throws”用法,如下所示 public Void handleResponse(HttpResponse response) throws IOException { ... } 我只是想知道这个“抛出”在这种情况下是如何工作的。 我之所以发布此消息,是因为要找到合适的搜索词go google有点困难。在函数体handleResponse()中的某个地方可能会抛出IOException。调用函数时,需要将其包围在try..catch块中。
public Void handleResponse(HttpResponse response) throws IOException
{
...
}
我只是想知道这个“抛出”在这种情况下是如何工作的。
我之所以发布此消息,是因为要找到合适的搜索词go google有点困难。在函数体
handleResponse()
中的某个地方可能会抛出IOException。调用函数时,需要将其包围在try..catch
块中。IOException
是一个选中的异常,因此如果方法中的代码可以抛出IOException
(而您没有在方法中捕获它),则需要抛出IOException
。如果IOException
是运行时异常(如NullPointerException
),则不需要这样做。也许你应该看看这个问题。你应该从这个问题开始。来自同一教程:
所有方法都使用throw语句来抛出异常。throw语句需要一个参数:throwable对象。Throwable对象是Throwable类的任何子类的实例。下面是一个throw语句的示例
方法声明后的
throws
关键字表明此方法可能会引发此异常。这意味着任何调用方法都必须确保捕获此异常,如下所示:
...
try {
var.handleResponse(response);
catch (IOException e) {
// oops, something went wrong
e.printStackTrace();
}
我认为你把
投掷
和投掷
混为一谈了
throws
在方法的签名中指出,在某些情况下,它可以抛出IOException
。
抛出新IOException()
将抛出实际异常
throws
关键字可以在每个Java程序中看到,如果异常是一个这只是Java,任何Java初学者的书都应该涵盖它,它会迫使您将方法调用封装在一个try{}catch(){}
块中。堆栈溢出对于特定的问题来说是很好的,但它确实不适合从头开始学习语言——你应该读一本好书或教程。谷歌搜索“java抛出关键词”的第二个链接。这个想法很好,我也这么想,他问汉克斯·斯特凡。这是第一次在声明中看到“throws”关键字。我从你简单的解释中明白了。谢谢!
...
try {
var.handleResponse(response);
catch (IOException e) {
// oops, something went wrong
e.printStackTrace();
}