gpt4 book ai didi

.net - 列出方法可能抛出的所有异常

转载 作者:行者123 更新时间:2023-12-04 07:13:27 25 4
gpt4 key购买 nike

我知道 Java 强制程序员列出该方法将抛出的所有异常,从而为代码用户创建了一种列出所有可能抛出的异常的简单方法。

另一方面,.NET 没有这样的功能,我们只剩下 API 文档或 XML 文档,其中有时会列出异常(exception)情况。

VS 是否有任何插件可以显示任何给定的调用可能会抛出哪些异常?鉴于反射的力量,难道不应该可以查看调用,查看调用中可能运行的所有分支并检查是否抛出了任何 .NET 异常?

最佳答案

我所知道的唯一工具是(商业)Exception Hunter from red-gate software .

但是,它并不像您最初想象的那样具有确定性。根据使用的其他程序集的版本,如果使用较新的版本,在构建时抛出的异常可能会在构建时发生变化,但在构建时抛出其他异常。

在 Java 中,您有“特殊”的 RuntimeException,它不必在方法签名中声明(包括所有从它派生的异常)。语言设计者选择不在 C# 中实现检查异常是有正当理由的(它们是否超过优势是有争议的)。一些 Java 开发人员只是将异常包装在运行时异常中,或者他们忘记使用导致信息丢失的“原因”异常。

有个好interview with Anders Hejlsberg关于检查异常以及为什么 C# 没有它们的一些推理 - 感谢 adrianbanks 提供链接。

关于.net - 列出方法可能抛出的所有异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2584861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com