问题标签 [try-catch]
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 - 如何避免在 try 语句中设置变量
我的问题是我必须在 try 语句中设置一个变量,否则会出现编译错误。
稍后我需要使用该变量,但它现在超出了范围,或者我相信。我在 try 语句之外初始化变量并将其设置为 null,我认为它可能可以在外部访问,但我仍然得到一个NullPointerException
.
代码在下面,为了便于阅读,去掉了很多代码——我知道这是不好的代码,但我是 Servlets 的新手,只是想看到它运行时所有移动部件都在做它们应该做的事情。
我创建了另一个调用 createDocs(...) 并传入所需参数的类,它工作正常。所以这让我很好奇为什么当我打电话时rs.getString("name")
我得到了NullPointerException
,因为这正是我在其他类中所做的(为了方便而从 main 方法运行)并且它按预期工作。
有问题的变量是 ResultSet 变量“rs” -
c# - 使用 try、catch 块的目的是什么?
它是 if, then 块的替代品吗?我见过很多这样使用它们的代码。
python - 尝试...除了...除了...:如何避免重复代码
- 我想避免
errorCount += 1
在多个地方写作。 - 我正在寻找比
- 我试图避免
store.rollback()
在每个 except 子句中。
关于如何做到这一点的任何想法?
c# - 为什么要在 C# 中捕获并重新抛出异常?
我正在看文章C# -可序列化 DTO 上的数据传输对象。
文章包括这段代码:
文章的其余部分看起来很理智和合理(对于菜鸟来说),但是 try-catch-throw 会抛出 WtfException ......这不完全等同于根本不处理异常吗?
尔格:
还是我错过了一些关于 C# 中错误处理的基本知识?它与 Java 几乎相同(减去检查的异常),不是吗?...也就是说,他们都改进了 C++。
堆栈溢出问题重新抛出无参数捕获和不做任何事情之间的区别?似乎支持我的论点,即 try-catch-throw 是无操作的。
编辑:
只是为将来发现此线程的任何人总结...
不要
堆栈跟踪信息对于确定问题的根本原因至关重要!
做
在不太具体的异常之前捕获更具体的异常(就像 Java 一样)。
参考:
vb.net - 有没有更好的方法让 Visual Studio 在调试模式下忽略 try/catch
我希望设计人员在我调试时捕捉到错误,并且我希望用户在他们发生错误时看到我的友好消息。我知道我可以通过以下方式完成此操作:
我不想写所有的#statements 并让它们弄乱我的代码。看起来这应该是一个共同的需求,并且必须有更好的方法。有谁知道更好的方法?
sql - 在 Select 语句中的 CONVERT 上尝试 CATCH
是否可以在 SQL Selects 中使用 TRY CATCH 块?
对于与此类似的东西,例如:
处理这种情况的最佳方法是什么?
php - 在文件未上传的 PHP 中尝试 catch 语句
我了解 try-catch 语句的作用,但是通过阅读 php.net 上的文档,我无法在自己的代码中实现一个。我需要一个真实的例子来帮助我理解。
如果上传不成功,如何将此示例转换为 try-catch 语句?
这可能不是一个很好的例子,但我们将不胜感激。
vb.net - 处理自定义函数中的异常
我们所有人都使用 try catch 块。但是在自定义函数中处理错误的最佳方法是什么?
抛出异常时向用户显示一个消息框(如果可能在函数内),或者返回一个值指示在函数内发现错误?
c# - 使用语句扩展的好奇 C#
我已经运行 ildasm 来发现:
生成与此等效的 IL 代码:
问题是为什么它会在finally中检查null?finally 块只有在 try 块被执行时才会被执行,而 try 块只有在 Simple 构造函数成功(即不抛出异常)时才会被执行,在这种情况下 simp 将是非空的。(如果有人担心在 Simple 构造函数和 try 块的开头之间可能会出现一些干预步骤,那么这确实是一个问题,因为可能会引发异常,从而完全阻止 finally 块的执行。)那么,到底为什么?
抛开(请)使用语句是否比 try-finally 更好的论点,我将 try-finally 块编写为:
c++ - C++ 中 try/catch 块的使用
一般来说,我倾向于将 try/catch 用于具有多个故障点的代码,这些故障点有一个共同的处理程序。
根据我的经验,这通常是在执行某些操作之前限定输入或上下文的代码,或者在执行某些操作之后限定输出。
我从文献和同事那里得到了建议,以尽量减少这些块中的代码,我接受这通常是好的建议。
我想更多地了解上述建议的基础:
- 开销的性质是什么?
- 是否有最近的开发指南来解决 try/catch 块的推荐使用(或避免)?
- 更快的处理器和更现代的编译器在多大程度上缓解了 try/catch 的问题?
在此先感谢您的帮助,
阿杰