1樓:封魔閃神的宣告
構造子類需要呼叫父類的建構函式,通過:base 可以呼叫帶有引數的指定的建構函式
本例為new vehicle(w,g);
去掉:base(w,g),預設呼叫
new vehicle();
因為vehicle(w,g)只是初始化wheels和weight,而car(int w, float g, int p)中也初始化了wheels和weight,所以結果一樣。
如果改成
public car(int w, float g, int p):base(w,g)
就可以看出差別了
如果刪除
public vehicle()
去掉:base(w,g)則會報錯
2樓:匿名使用者
public car(int w, float g, int p):base(w,g)
上面這個建構函式有重複操作,當然就成了你說的去掉:base(w,g)結果都一樣。
因為wheels = w; weight = g; 這兩句在基類建構函式中已經執行,也就是
:base(w,g)就已經執行wheels = w; weight = g;這兩句,結果你在上面的car建構函式裡又執行了一次。
上面的函式應該寫為:
public car(int w, float g, int p):base(w,g)
你在試試去掉與不去掉的效果
c# base關鍵字用法解釋(怎麼理解)
3樓:匿名使用者
上面3句分別怎麼理解,尤其是第1句,為什麼是呼叫基類上已被其他方法重寫的方法。難道,沒有被重寫的方法不行?
沒有被重寫的方法也是可以的!不是private訪問修飾符的屬性或方法都可以訪問。
加了base就是指明要訪問基類中的某個屬性或方法.
例子basicclass//基類
}childclass:basicclasspublic void childsetwidth(int w)//給width賦值(呼叫基類的方法)}
4樓:吉林省富智科技
繼承.就是像"子承父"的關係.用這個關鍵字就能用基類裡的東西,同時也可寫自己的方法
5樓:匿名使用者
呼叫父類已經被子類覆蓋的方法
請教c#中this和base關鍵字啥意思
6樓:匿名使用者
太明顯了吧,this是繼承本類的建構函式,base是繼承父類的!完全不同,括號放引數就是繼承那個帶引數的建構函式!
7樓:匿名使用者
this一般是代表當前類。。。。base是代表當前類的父類。。。this關鍵字代表當前類可以呼叫當前類的屬性,方法base代表當前類的父類,則可以呼叫父類非私有的屬性,方法,以及你說的建構函式
c#中的base關鍵詞是什麼?
8樓:匿名使用者
base 是代表父類。
public void test(){
base();
}呼叫父類的建構函式。
C中的多型問題
多型又稱後期繫結,是一種在執行時 just in time 指定方法呼叫地址的技術。通常,編譯器在編譯期就能知道方法的地址,執行時直接載入這個地址上的堆疊 net中指中間 就可以了,這被稱為靜態繫結或前期繫結,雖然很少使用這個術語。編譯器在編譯期不能確定方法的地址,而只能在執行時確定的就被稱為後期繫...
C語言關於一維陣列的應用問題,一個C語言關於一維陣列的應用問題。
include int main i,s for i 0 i 20 i count 9 count 10 注意100 10 10for i 0 i 10 i return 0 note your choice is c ide include stdio.h void main m 0 for i ...
c中ShowDialog的問題,C WinForm ShowDialog 兩次
觸發離開事件,validate事件等等,showdialog會中斷當前執行緒,並且,焦點移到dialog上面.所以,當前如果使用 系統的showdialog方法,那麼其父窗體將不能獲取焦點.有兩種方法可以實現,1 在b的load事件中將焦點放到c控鍵上.2 為b增加一個建構函式,引數為string,...