在我们将一个类实例化的时候,系统会给类里的变量进行初始化(给定默认值),这个就叫做构造器。
自定义构造器是指在类被实例化的时候,根据自定义构造器代码对类给定指定值。指定未被初始化变量的默认值。
默认构造器
namespace ConsoleApp3
{
internal class Program
{
static void Main(string[] args)
{
myclass myclass11 = new myclass();
Console.WriteLine(myclass11.name);
Console.WriteLine(myclass11.number.ToString());
Console.ReadLine();
}
}
class myclass
{
public int number;
public string name;
}
}
在我们执行该代码时,运行的结果是一个空字符和一个0,这就是在类被实例化时给的默认值。
给定默认值的叫做默认构造器。
0
自定义构造器
namespace ConsoleApp3
{
internal class Program
{
static void Main(string[] args)
{
myclass myclass11 = new myclass(1111,"Test");
Console.WriteLine(myclass11.name);
Console.WriteLine(myclass11.number.ToString());
Console.ReadLine();
}
}
class myclass
{
public myclass(int int1, string name)
{
this.number = int1;
this.name = name;
}
public int number;
public string name;
}
}
在类里创建自定义构造器,使用this.变量名对其进行赋指定值,在类被实例化时会调用该方法体。
在定义该构造器后,在类被实例化时会要求传入默认值,以防止程序出错。
Test
1111
可存在多个构造器,就是方法的重载。
该构造器可以防止默认构造器对其进行初始化后,默认值引发其它方法调用时报错。