c# 自定义Exception类
时间: 2023-12-07 13:14:00 浏览: 158
在C#中,我们可以通过自定义异常类来处理应用程序中可能出现的异常情况。自定义异常类需要继承自`System.Exception`类。
以下是一个简单的自定义异常类的实现示例:
```csharp
public class MyException : Exception
{
public MyException()
{
}
public MyException(string message)
: base(message)
{
}
public MyException(string message, Exception innerException)
: base(message, innerException)
{
}
}
```
在上面的代码中,我们定义了一个名为`MyException`的自定义异常类。该类继承自`System.Exception`类,并提供了三个构造函数。第一个构造函数是默认的构造函数,第二个构造函数接受一个字符串参数,用于指定异常消息,第三个构造函数接受两个参数,第一个参数是异常消息,第二个参数是内部异常。
通过自定义异常类,我们可以在应用程序中抛出符合我们需求的异常,这样可以更好地处理应用程序中可能出现的异常情况。以下是一个示例:
```csharp
public class MyClass
{
public void DoSomething(int input)
{
if (input < 0)
{
throw new MyException("Input cannot be negative.");
}
}
}
class Program
{
static void Main(string[] args)
{
MyClass myClass = new MyClass();
try
{
myClass.DoSomething(-1);
}
catch (MyException ex)
{
Console.WriteLine(ex.Message);
}
}
}
```
在上面的代码中,我们在`MyClass`类的`DoSomething`方法中检查输入是否为负数,如果是负数,则抛出`MyException`异常。在`Main`方法中,我们捕获了`MyException`异常,并输出了异常消息。
阅读全文