中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

基礎才(cai)是重中之重~方法override詳(xiang)解(jie)

回到 目錄

之(zhi)所以寫這篇文(wen)章,完全是(shi)因為這次(ci)代碼審核(he),這次(ci)代碼審核(he)過程當中,出現了很多我認(ren)為基礎知(zhi)識(shi)不夠扎實(shi)的問題,所以,打算(suan)把它們記錄下(xia)來(lai),共大家分享。

方法(fa)的(de)override,即方法(fa)的(de)覆寫(xie)或者重寫(xie),有時還是習慣叫它(ta)英文override,它(ta)是指(zhi)將父類的(de)abstract或者virtual方法(fa)進行(xing)重新設(she)計,可(ke)以(yi)將新的(de)功能加入(ru)其中,看起來很不(bu)錯(cuo),但在使用過程中,有時我們可(ke)能拿不(bu)準它(ta),下(xia)面我說幾點(dian):

一  父類(lei)是抽象類(lei),這時,它的實例化需(xu)要通過子(zi)類(lei)來完成,這時的override是子(zi)類(lei)最后重寫的

二  父類(lei)(lei)是普通類(lei)(lei),這時,它(ta)的(de)(de)實例化工作如果由(you)自(zi)己完(wan)成(cheng),結果就是父類(lei)(lei)virtual的(de)(de)結果,與它(ta)的(de)(de)子類(lei)(lei)無關。

三  父類是普通類,它(ta)的實例化工作如果由子類完成,那(nei)么,它(ta)的結果就是子類方法override的結果

OK,下(xia)(xia)面我(wo)們(men)來說一下(xia)(xia)例(li)子,它由father類和sons類組成,father類是(shi)一個普(pu)通類,在這實現當中,它很可能(neng)是(shi)個泛型(xing)類,如倉儲(chu)模(mo)式的實現

   /// <summary>
    /// 一個爸爸
    /// </summary>
    class Father
    {
        public virtual void print()
        {
            Console.WriteLine("我是爸爸");
        }
    }

下面是兒(er)子A對爸爸的print方法的重寫工作(zuo)

    /// <summary>
    /// 一個兒子A
    /// </summary>
    class SonA : Father
    {
        public override void print()
        {
            Console.WriteLine("我是(shi)兒子");//override father class print method.
        }

        public void sonPrint()
        {
            base.print(); //我是爸爸
            print();//我是兒子

        }
    }

而下面是對print方法的各種(zhong)調用(yong)工作,包括了實現化的方式

     static void Main(string[] args)
        {

            SonA son = new SonA();
            son.sonPrint(); //我是爸爸,我是兒子
            Father father = new Father();
            father.print();//我是爸爸
            Father son2 = new SonA();
            son2.print();//兒(er)是兒(er)子
        }

OK,通過結果(guo)我們可以看出:

在兒(er)子類里(li),base.print()方(fang)法走(zou)的(de)是爸爸的(de)print;print走(zou)的(de)是兒(er)子

在兒子類以(yi)外,使(shi)用爸爸自己去實例化后(hou),print走的(de)是爸爸的(de);使(shi)用兒子進行(xing)實例化后(hou),print方法走的(de)是兒子重寫后(hou)的(de);

回到 目錄

posted @ 2013-11-09 11:28  張占嶺  閱讀(4268)  評論(4)    收藏  舉報