1、Vitual方法和普通方法區別為:繼承其的子類可以用override/new在過載此方法,也可以不過載其方法,有方法體(可以寫語句),override修飾則呼叫子類方法
2、abstract類中抽象方法無方法體(只有名稱)、普通方法(靜態方法,無修飾的方法,Virtual方法)可以有方法體,其他類的基類,繼承其的子類必須實現所有抽象方法
3、abstract類無法例項化,可以繼承介面
4、抽象方法是隱式的虛方法,可以被基類修飾為virtual方法
5、抽象方法只能在抽象類中,可以被override,不可以用new
7、Override方法必須和其父類方法具有相同的簽名(函式名、返回值、引數列、訪問許可權 如:public)
8、Override方法無法重寫非virtual方法和static修飾的方法
9、Override方法不能用此修飾符:new static virtual abstract
10、sealed類(密封類)無法被繼承 sealed方法必須和override連起來修飾(如:sealed protected override void F(){}),實現sealed方法類的父類必須實現了此方法(存在),密封方法其本身無法再任何派生類中被重寫
11、new 如果父類方法裡面是new 子類必須用new修飾,如果子類是private修飾,則直接呼叫父類的new方法,否則呼叫子類new方法,子類new方法可以重寫父類virtual方法,new方法,override方法,不可以寫抽象方法
12、只有override方法才可以用sealed修飾 //只有重寫方法才能密封
virtual abstract override new 幾點學習
相關文章
- C# [method Modifiers] abstract virtual override newC#IDE
- c# abstract抽象類_非抽象類_virtual_虛方法_override重寫C#抽象IDE
- C#之Abstract、Vitrual、OverrideC#IDE
- 【轉】C#中virtual和abstract的區別C#
- 學習linux幾點忠告(轉)Linux
- Java入門學習-理解super,this,@override的用法JavaIDE
- C#開發中,學習整理的 New 的幾個常見問題C#
- 學習Kali Linux必須知道的幾點Linux
- 諮詢顧問學習的幾點建議
- 學習筆記:快速成長的幾點方法筆記
- 深入學習golang(4)—new與makeGolang
- Linux系統學習須牢記這幾點Linux
- 學習建議,大資料元件那麼多,可以重點學習這幾個大資料元件
- 新手學習Java需要了解的幾個知識點!Java
- 使用Rust的幾點理由,加入我們,一起學習!Rust
- 一句話說明白C#中的new與override的區別C#IDE
- 使用 Override 和 New 關鍵字進行版本控制(C# 程式設計指南)IDEC#程式設計
- 學習觀點
- 【學習】分享幾個學習中的小問題
- java abstractJava
- Override setterIDE
- new String("yefeng")建立了幾個物件物件
- C#關鍵字之過載overload、重寫override、覆寫overwrite(new)詳解C#IDE
- Ajax學習(重點)
- java學習要點Java
- 我適不適合學習新媒體運營?要清楚這幾點!
- 蓋神(蓋國強)ORACLE學習之路及對DBA的幾點建議Oracle
- 分享我的幾個學習故事
- 【學習筆記】計算幾何筆記
- 【學習筆記】make 和 new 關鍵字的區別筆記
- 【C++學習筆記】使用new建立動態結構C++筆記
- makefile之overrideIDE
- @Override標籤IDE
- Aura QuickAction OverrideUIIDE
- c# abstractC#
- 深度學習的難點深度學習
- MyBatis知識點學習MyBatis
- Java知識點學習Java