C#中的 NullReferenceException 异常

什么是NullReferenceException?

NullReferenceException是一个异常,当代码尝试访问未引用任何对象的引用时,将引发NullReferenceException。如果引用变量/对象未引用任何对象,则它将被视为null。并且,当代码尝试访问此变量/对象时,将存在一个称为NullReferenceException的异常。

为了处理NullReferenceException,我们可以使用NullReferenceException类在catch块中编写代码/消息。

C#中的NullReferenceException示例

using System;

class Sample
{
    public void SayHello()
    {
        Console.WriteLine("Hello World");
    }
}

class Program
{
    static void Main()
    {
        Sample s = null;

        try
        {
            s.SayHello();
        }
        catch (NullReferenceException e)
        {
            Console.WriteLine("EXCEPTION: "+e.Message);
        }
    }
}

输出结果

EXCEPTION: Object reference not set to an instance of an object

在上面的程序中,我们创建了一个类“Sample”,其中包含一个方法 SayHello(),然后我们创建了另一个使用类“Sample”的类,然后我们创建了类“Sample”的引用,并将null赋给引用s。我们进一步使用引用s调用了方法SayHello(),但它没有正确初始化。因此,它生成在catch块中捕获的NullReferenceException。