覆蓋類成員:通過new關鍵字修飾虛函式表示覆蓋該虛函式。
乙個虛函式被覆蓋後,任何父類變數都不能訪問該虛函式的具體實現。
public virtual void introducemyself()//父類虛函式
public new void introducemyself()//子類覆蓋父類虛函式
using system;
using system.collections.generic;
using system.linq;
using system.text;
namespace methodoverridebynew
public
class
person
///
/// 定義虛函式introducemyself()
///
public
virtual
void
introducemyself()
///
/// 定義虛函式printname()
///
public
virtual
void
printname()
}public
class
chineseperson :person
///
/// 覆蓋父類方法introducemyself,使用new關鍵字修飾虛函式
///
public
newvoid
introducemyself()
///
/// 過載父類方法printname,使用override關鍵字修飾虛函式
///
public
override
void
printname()
}class
program}}
結果:person.introducemyself()
chineseperson.introducemyself()
chineseperson.printname()
chineseperson.printname()
C 函式覆蓋和隱藏
原則 成員函式被過載的特徵 相同的範圍 在同乙個類中 函式名字相同 引數不同 覆蓋是指派生類函式覆蓋基類函式,特徵是 不同的範圍 分別位於派生類與基類 函式名字相同 引數相同 基類函式必須有virtual關鍵字。隱藏分兩種情況 一種是,派生類的函式與基類的函式同名,但是引數不同。此時,不論有無vir...
C 函式覆蓋和隱藏
一 覆蓋 1.定義 覆蓋是基類和派生類中的,基類函式是虛函式,派生類中重寫此函式,函式名引數都想同,這就會發生覆蓋 為什麼叫覆蓋?因為派生類繼承基類的時候實際上是先拷貝了基類的所有非private的成員,當基類的函式是虛函式的時候,如果重寫此函式,函式名和引數完全相同,此時派生類中的函式會將派生的基...
C 函式 過載 覆蓋 隱藏
在c 的類中函式定義的時候會有 過載,覆蓋 也成為重寫 隱藏 也成為重定義 三種情況下面說說他們的區別,以及一些注意事項 學習c 中的類,主要有兩種,一種是用struct 關鍵字 定義的,預設情況下類中的成員是public屬性,而另一種使用class 關鍵字 定義的預設是private屬性的。子類在...