是的,可以在C#構(gòu)造函數(shù)中拋出異常
public class MyClass
{
public MyClass(int value)
{
if (value < 0)
{
throw new ArgumentException("Value must be non-negative", nameof(value));
}
// 其他初始化代碼...
}
}
在這個(gè)例子中,如果傳遞給構(gòu)造函數(shù)的值小于0,將會(huì)拋出一個(gè)ArgumentException
異常。在調(diào)用此構(gòu)造函數(shù)時(shí),需要處理這個(gè)異常,否則程序會(huì)終止。
try
{
var myInstance = new MyClass(-1);
}
catch (ArgumentException ex)
{
Console.WriteLine($"Error: {ex.Message}");
}