问题标签 [checked-exceptions]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 如何在 Java 中将未检查的异常转换/包装为已检查的异常?
Java中的Unchecked Exceptions可以转换成Checked Exceptions吗?如果是,请提出将未检查异常转换/包装为已检查异常的方法。
java - 如何从 Java 8 流中抛出 CHECKED 异常?
如何从 Java 8 流/lambda 中抛出 CHECKED 异常?
换句话说,我想让这样的代码编译:
此代码无法编译,因为Class.forName()
上面的方法 throwsClassNotFoundException
已被检查。
请注意,我不想将检查的异常包装在运行时异常中,而是抛出包装的未经检查的异常。我想抛出检查的异常本身,而不是在流中添加丑陋的try
/ 。catches
java - 多次声明相同的检查异常
我刚刚意识到我可以编写一个方法多次声明相同的检查异常。
我想不出我为什么要这样做的原因。我一直在寻找一段时间,但我无法找到是否有资源可以解释为什么这是可以接受的,或者它怎么可能是好的。谁能指出我有关此的一些资源?
java - 始终使用检查的异常
我最近一直在重构一些 Java 代码……我发现有很多 RuntimeExceptions 被抛出(即未经检查的异常)。我创建了自己的已检查异常,并用我自己的异常替换了这些 RuntimeExceptions 的每个实例。然后,这迫使我检查异常。
话虽如此,我发现检查异常更好,因为另一个开发人员将确保处理异常......而不是程序只是吃异常而不向用户显示任何内容。
我已经阅读了许多关于未检查异常与已检查异常的文章。但是,我仍然觉得我更多地检查了异常,因为它减少了人为错误。
主要使用检查的异常是多么糟糕的编程?有没有其他人觉得他们更喜欢受检查的异常而不是未检查的异常?
java - 从 lambda 表达式中抛出的已检查异常
您能解释一下为什么必须从 lambda 表达式中捕获已检查的异常吗?换句话说,为什么下面的代码无法编译...
但是这个会吗?
似乎被调用者现在必须处理抛出的任何检查异常,而不是调用者。
java - 在考试条件中确定什么是已检查以及什么是未检查异常?
我正在为 Java 助理考试而学习,并且在考试条件下正在努力确定哪些是已检查的,哪些是未检查的。我知道如果我可以根据我在这里阅读的内容编写代码,我可以查找它或执行 instanceof - 但是有没有一种简单的方法可以确定它。我捡了一些,但发现很难记住它们。下面是一个依赖于这些知识的问题的考试。
哪两个代码片段会编译?
java - throws 语句不考虑继承的异常
我有两个例外:
上面的代码说unhandled exception type MyException1
,即使MyException2
extends MyException1
。为什么它期望MyException1
在 throws 语句中?
java - 包含多个异常的自定义异常:鼓励还是不鼓励?
我正在编写一个用于访问数据库的 Java 库。我将异常抛给使用 JAR 库以他/她想要的方式处理它的最终程序员。
我编写了一个自定义异常(如下所示)来将特定于连接的异常包装在一起,这样最终程序员就不必在他的代码中捕获所有这些异常。(为了方便他)
在编写 Java 库时,这是一个好习惯吗?通过使用它,用户只需在他的代码中捕获 NConnectionException。
}
java - 在不同的 JUnit 测试中管理检查的异常
我正在为我的一种方法编写 Java 单元测试。方法声明是这样的:
现在我正在尝试编写两个单元测试。一种是测试是否抛出了正确的异常。另一个是确保写入转换发生。这就是我的测试用例的样子
对于这两个测试用例,我都收到一条错误消息:Unhandled InvalidRomanNumberException。仅当我将 throws InvalidRomanNumberException 添加到每个方法定义时才能解决此问题。但我认为这不是正确的方法。只是想和你们其他人核实一下,这里的标准是什么?我应该如何解决这个未处理的异常消息