如何在 C# 中從同一類中某個建構函式內呼叫另一個建構函式?
利用 c# 中的 this 關鍵字從另一個建構函式呼叫一個建構函式
要呼叫父類中存在的建構函式,使用 base 關鍵字
示例
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(); } }
輸出
Parameter less constructor called 1 2 1 2 3
要呼叫另一個類中存在的建構函式,使用 base 關鍵字
示例
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(); } }
輸出
Base class Constructor 1 2 3 Derived class Constructor 1 2 3
廣告