我是
Android环境中的新手,我已经开始编写一些代码来对数据库执行一些查询.当我必须处理异常时,我不知道采用什么方法 – 在Android中我曾经使用throws声明方法,但似乎在android中不允许抛出?试试看?
我这样说是因为eclipse并不建议我添加抛出声明,就像我在Android环境之外,我猜它与扩展Activity有关.
那么在android中处理异常的适当方法是什么?使用try-catch在每个句子周围使我的代码看起来很糟糕,这不是我想要做的.
我这样说是因为eclipse并不建议我添加抛出声明,就像我在Android环境之外,我猜它与扩展Activity有关.
那么在android中处理异常的适当方法是什么?使用try-catch在每个句子周围使我的代码看起来很糟糕,这不是我想要做的.
解决方法
如果您使用的方法已经抛出异常,您可能只想将异常重新抛出为新类型:
public void someMethod() throws IOException { try { // Do database operation } catch (MyException e){ throw new IOException(e.toString()); } } // Or,if there is no exception,use an unchecked exception: public void otherMethod() { try { // DB operation } catch (MyException e){ throw new RuntimeException(e); } }
另一个选项是使MyException扩展RuntimeException.然后编译器不会强制您捕获它或将其添加到方法签名. RuntimeExceptions称为未经检查的异常,这意味着您不必通过try / catch检查它们是否发生.这些示例包括NullPointer和ArrayOutOfBounds.