如果您没有为类提供构造函数,则C#默认创建一个实例化该对象的构造函数,并将成员变量设置为Default Values Table中列出的默认值。没有任何参数的构造函数称为默认构造函数。换句话说,这种类型的构造函数不接受参数。默认构造函数的缺点是,该类的每个实例都将初始化为相同的值,并且无法将该类的每个实例初始化为不同的值。
默认构造函数初始化:
- 该类中的所有数字字段均设为零。
- 所有字符串和对象字段都为空。
范例1:
// C# Program to illustrate the use
// of Default Constructor
using System;
namespace GFG {
class multiplication
{
int a, b;
// default Constructor
public multiplication()
{
a = 10;
b = 5;
}
// Main Method
public static void Main() {
// an object is created,
// constructor is called
multiplication obj = new multiplication();
Console.WriteLine(obj.a);
Console.WriteLine(obj.b);
Console.WriteLine("The result of multiplication is: "
+(obj.a * obj.b));
}
}
}
输出:
10
5
The result of multiplication is: 50
示例2:在此示例中,Person类没有任何构造函数,在这种情况下,将自动提供默认构造函数,并将字段初始化为其默认值。
// C# Program to illustrate the use
// of Default Constructor
using System;
public class Person
{
public int age;
public string name;
}
// Driver Class
class TestPerson {
// Main Method
static void Main() {
// object creation
Person pers = new Person();
Console.WriteLine("Name: {0}, Age: {1}", pers.name, pers.age);
}
}
输出:
Name: , Age: 0
注意:之所以输出,是因为默认情况下将字符串分配为null,将整数分配为0。