System.Type的任何方法都可以抛出SecurityException吗?

时间:2014-12-08 14:52:43

标签: c# .net

通常情况下,MSDN会列出每种方法的所有可能异常,但在this页面上似乎并不存在,但该示例为SecurityException提供了一个try块。这是否意味着SecurityException是可能的?如果类型不可见怎么办?

2 个答案:

答案 0 :(得分:4)

每种方法都不可能有完整的例外列表。例如,您是否曾在文档中看到过OutOfMemoryException

文档中的例外是最常见的例外,具有特定原因的例外必然会使用该方法。此外,注意这些异常提供了一种记录方法参数的简便方法。

一些例外也会在更深层中引发,例如Win32Exception(您将在某些文件操作中看到),SecurityException(可能与CAS相关)和其他。这些不是针对该方法的,而是针对整个框架。

对于SecurityExceptionRemarks section确实提供了一些有用的提示。

答案 1 :(得分:1)

考虑一下:如果你的内存不足,调用任何方法可能会导致OutOfMemoryException,对吧?这是因为在方法调用的深处,可能会引发异常。

文档通常只列出方法内立即引发的异常,而不是调用堆栈中深度调用的方法。

所有可能的例外都会使文档膨胀吗?我猜不是。