C# 子類調用父類構造函數


View Code
 1 namespace override_class
 2 {
 3     class Fa_class
 4     {
 5         public int[] T = new int[10];
 6      //父類構造函數
 7         public Fa_class()
 8         {
 9             for (int i = 0; i < 10; i++)
10             {
11                 T[i] = 0;
12             }
13         }
14 
15         public Fa_class(int a)
16         {
17             for (int i = 0; i < 10; i++)
18             {
19                 T[i] = a;
20             }
21         }
22         public void mtd_1()
23         {
24             Console.WriteLine("mtd_1 of the faclass");
25         }
26         public int this[int idx]
27         {
28             get
29             {
30                 return T[idx];
31             }
32             set
33             {
34                 T[idx] = value;
35             }
36         }
37         public int fa_fld
38         {
39             get
40             {
41                 return fa_fld;
42             }
43             set
44             {
45                 fa_fld = value;
46             }
47         }
48     }
49     class son_class:Fa_class
50     {
51         public son_class(int a):base(a)//子類構造函數調用父類構造函數
52         {
53             Console.WriteLine("son done.");
54         }
55     }
56 }

RT

用和子類繼承父類的方式類似的“:”來調用(繼承)父類的構造函數

如果基類中定義了帶參數的一個或者多個構造函數,則派生類中也必須定義至少一個構造函數,且派生類中的構造函數都必須通過base()函數“調用”基類中的某一個構造函數。
//必須重載基類的構造函數
傳遞給基類構造函數的“實參列表”通常包含在派生類構造函數的“形參列表”中


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM