📜  C#|默认构造函数

📅  最后修改于: 2021-05-29 17:24:33             🧑  作者: Mango

如果您没有为类提供构造函数,则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。