c# - 为什么这不会抛出异常

标签 c#

这是一个简单的问题,但我有疑问,请看下面的代码

public static String something;
    static void Main(string[] args)
    {
        try
        {
            if (something == "blah")
                System.Console.Write("ok");
        }
        catch (Exception)
        {

            throw;
        }

    }

我知道这不会抛出异常,但为什么呢?因为名称为 something 的变量为 null,当您进行比较时,您试图获得 null 的引用。有人可以向我解释为什么吗?谢谢!

最佳答案

这里没有任何问题,因为您不是在尝试取消引用 某事。您正在获取它的,即null。如果您尝试取消引用它(即 something.somemethod()),则会抛出异常。

关于c# - 为什么这不会抛出异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6440941/

相关文章:

c# - 如何在单个方法上指定多个泛型类型约束?

c# - System.IO.FileNotFoundException : The Web application at http://SharePoint/could not be found. 验证您是否正确键入了 URL

c# - DataGridView分页

c# - DbContext 获取在使用区域内处理

c# - 如何自定义成员(member)提供者

c# - StringWriter.ToString() 处的 OutOfMemoryException

c# - 创建 DPI 感知应用程序

WCF DataContract 的 C# 类结构

c# - 声音到 3 个主要频率(低、中、高)

c# - 为什么不允许重写 Finalize 方法