91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#中隱藏、重寫、重載的區別是什么

發布時間:2021-12-03 10:09:12 來源:億速云 閱讀:188 作者:iii 欄目:編程語言

這篇文章主要講解了“C#中隱藏、重寫、重載的區別是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C#中隱藏、重寫、重載的區別是什么”吧!

C#重載、C#重寫和C#隱藏的定義

C#重載:同一個作用域內發生(比如一個類里面),定義一系列同名方法,但是方法的參數列表不同。這樣才能通過傳遞不同的參數來決定到底調用哪一個。而返回值類型不同是不能構成重載的。

C#重寫:繼承時發生,在子類中重新定義父類中的方法,子類中的方法和父類的方法是一樣的

例如:基類方法聲明為virtual(虛方法),派生類中使用override申明此方法的重寫.

C#隱藏:基類方法不做申明(默認為非虛方法),在派生類中使用new聲明此方法的隱藏。

C#重載時,根據參數選擇調用的方法;

C#重寫時,訪問父類子類皆調用子類的重寫方法;

C#隱藏時,訪問父類則調用父類的方法,子類子類的方法。

C#隱藏(new)示例:

using    System;       class    A       {             public    void    F()               {                   Console.WriteLine("A.F");               }       }       class    B:    A       {             new    public    void    F()               {                     Console.WriteLine("B.F");               }       }       class    Test       {             static void Main(string[] args)           {                   B    b    =    new    B();                   b.F();                   A    a    =    b;                     a.F();             }       }

輸出為 

B.F 

A.F 

C#重寫virtual(虛方法)示例 

using    System;     class    A     {           public    virtual    void    F()             {                 Console.WriteLine("A.F");             }     }     class    B:    A     {           public    override    void    F()             {                   Console.WriteLine("B.F");             }     }     class    Test     {           static    void    Main()             {                 B    b    =    new    B();                 b.F();                 A    a    =    b;                   a.F();           }     }

輸出為 

B.F 

B.F

補充:重寫override一般用于接口實現和繼承類的方法改寫,要注意

1、覆蓋的方法的標志必須要和被覆蓋的方法的標志完全匹配,才能達到覆蓋的效果;

2、覆蓋的方法的返回值必須和被覆蓋的方法的返回一致;

3、覆蓋的方法所拋出的異常必須和被覆蓋方法的所拋出的異常一致,或者是其子類;

4、被覆蓋的方法不能為private,否則在其子類中只是新定義了一個方法,并沒有對其進行覆蓋。

感謝各位的閱讀,以上就是“C#中隱藏、重寫、重載的區別是什么”的內容了,經過本文的學習后,相信大家對C#中隱藏、重寫、重載的區別是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

罗甸县| 班戈县| 阿合奇县| 门头沟区| 金溪县| 来安县| 惠水县| 青州市| 文安县| 廉江市| 静海县| 吉安县| 天水市| 原阳县| 留坝县| 榆社县| 吉林市| 云浮市| 桃源县| 波密县| 德昌县| 上思县| 炎陵县| 资溪县| 库伦旗| 敦煌市| 竹溪县| 西华县| 朝阳县| 同江市| 嘉黎县| 济宁市| 翼城县| 团风县| 托里县| 临沭县| 五指山市| 山东省| 东兰县| 竹北市| 锡林郭勒盟|