C#中的自定义异常是什么?

像任何其他编程语言一样,在C#中,您可以轻松创建用户定义的异常。用户定义的异常类是从Exception类派生的。自定义例外就是我们定义的用户定义例外。

在下面的示例中,创建的异常不是内置异常。这是一个自定义异常-

TempIsZeroException

您可以尝试运行以下代码,以了解如何在C#中创建用户定义的异常。

示例

using System;

namespace Demo {
   class TestTemperature {
      static void Main(string[] args) {
         Temperature temp = new Temperature();
         try {
            temp.showTemp();
         } catch(TempIsZeroException e) {
            Console.WriteLine("TempIsZeroException: {0}", e.Message);
         }
         Console.ReadKey();
      }
   }
}

public class TempIsZeroException: Exception {
   public TempIsZeroException(string message): base(message) {}
}

public class Temperature {
   int temperature = 0;

   public void showTemp() {

      if(temperature == 0) {
         throw (new TempIsZeroException("Zero Temperature found"));
      } else {
         Console.WriteLine("Temperature: {0}", temperature);
      }
   }
}

这将产生以下输出-

输出结果

TempIsZeroException: Zero Temperature found