Tận dụng cái này từ khóa trong c # để gọi một hàm tạo từ một hàm tạo khác
Để gọi một hàm tạo có trong lớp cha, hãy sử dụng base từ khóa
Ví dụ
class Demo{
public Demo(){
System.Console.WriteLine("Parameter less constructor called");
}
public Demo(int firstNumber, int secondNumber) : this(){
System.Console.WriteLine($"{firstNumber} {secondNumber}");
}
public Demo(int firstNumber, int secondNumber, int thirdNumber) : this(firstNumber, secondNumber){
System.Console.WriteLine($"{firstNumber} {secondNumber} {thirdNumber}");
}
}
class Program{
static void Main(){
Demo obj = new Demo(1, 2, 3);
Console.ReadLine();
}
} Đầu ra
Parameter less constructor called 1 2 1 2 3
Để gọi một hàm tạo có trong một lớp khác, hãy sử dụng từ khóa cơ sở
Ví dụ
class DemoBase{
public DemoBase(int firstNumber, int secondNumber, int thirdNumber){
System.Console.WriteLine("Base class Constructor");
System.Console.WriteLine($"{firstNumber} {secondNumber} {thirdNumber}");
}
}
class Demo : DemoBase{
public Demo(int firstNumber, int secondNumber, int thirdNumber) : base(firstNumber, secondNumber, thirdNumber){
System.Console.WriteLine("Derived class Constructor");
System.Console.WriteLine($"{firstNumber} {secondNumber} {thirdNumber}");
}
}
class Program{
static void Main(){
Demo obj = new Demo(1, 2, 3);
Console.ReadLine();
}
} Đầu ra
Base class Constructor 1 2 3 Derived class Constructor 1 2 3