在C#中,構(gòu)造函數(shù)的主要任務(wù)是初始化對象的狀態(tài)。為了確保對象的完整性,構(gòu)造函數(shù)應(yīng)該執(zhí)行以下操作:
public class MyClass
{
public int MyProperty { get; set; } = 0;
public MyClass()
{
// 設(shè)置默認(rèn)值
}
}
public class MyClass
{
public int MyProperty { get; set; }
public MyClass(int value)
{
if (value < 0)
{
throw new ArgumentException("Value must be non-negative.");
}
MyProperty = value;
}
}
public class MyClass
{
public MyDependency MyDependency { get; set; }
public MyClass(MyDependency dependency)
{
if (dependency == null)
{
throw new ArgumentNullException(nameof(dependency));
}
MyDependency = dependency;
}
}
public class MyClass
{
public int MyProperty { get; set; }
public MyClass()
{
MyProperty = 0;
}
public MyClass(int value)
{
MyProperty = value;
}
}
通過遵循這些準(zhǔn)則,構(gòu)造函數(shù)可以確保對象的完整性,從而避免在使用對象時出現(xiàn)意外的行為或錯誤。