如何忽略Java中的异常
我有以下代码:
TestClass test=new TestClass();test.setSomething1(0); //could, but probably won't throw Exception
test.setSomething2(0); //could, but probably won't throw Exception
我想执行:test.setSomething2(0);
即使test.setSomething(0)
(上面的行)抛出异常。除了:
try{ test.setSomething1(0);
}catch(Exception e){
//ignore
}
try{
test.setSomething2(0);
}catch(Exception e){
//ignore
}
我连续有很多test.setSomething,它们都可能引发异常。如果他们这样做,我只想跳过这一行,移至下一行。
为了澄清起见,我不在乎它是否引发异常,并且我无法编辑引发此异常的代码的源代码。
这是我不关心例外的情况(请不要使用通用量化的语句,例如“您永远不要忽略异常”)。我正在设置某些对象的值。当我向用户提供值时,无论如何我都会执行null检查,因此,是否执行任何代码行实际上都没有关系。
回答:
我会严重怀疑任何忽略测试代码引发的异常的测试代码的合理性。也就是说,假设您知道自己在做什么……就无法从根本上忽略引发的异常。您能做的最好的事情就是最小化包装异常抛出代码所需的样板。
如果您使用的是Java 8,则可以使用以下代码:
public static void ignoringExc(RunnableExc r) { try { r.run(); } catch (Exception e) { }
}
@FunctionalInterface public interface RunnableExc { void run() throws Exception; }
然后,这意味着静态导入,您的代码将变为
ignoringExc(() -> test.setSomething1(0));ignoringExc(() -> test.setSomething2(0));
以上是 如何忽略Java中的异常 的全部内容, 来源链接: utcz.com/qa/430308.html