base的含義及使用及與this的區別


C#中base關鍵字的幾種用法 - bobob - 博客園 (cnblogs.com)

C#構造函數里的base和this的區別 - 傲世狂楓 - 博客園 (cnblogs.com)

我的理解

1、在創建構造方法時,指定執行父類的構造方法

    public class B : A
    {
        public B():base()
        {
            Console.WriteLine("Build B");
        }

    }

 

       static void Main(string[] args)
        {
            B b = new B();

            //Console.WriteLine("Hello World!");
        }

執行結果:

 

 若更改B的構造函數,將base("")改成base()

    public class B : A
    {
        public B():base()
        {
            Console.WriteLine("Build B");
        }

    }

執行結果:

 

 2、在派生類中調用基類的方法。

public class Father
    {
        protected string _name = "Father";
        public void startFire()
        {
            Console.WriteLine("{0}生火",_name);
        }
    }
public class Son : Father
    {
        protected string _name = "Son";
        public void boil()
        {
            base.startFire();
            Console.WriteLine("{0}煮飯",_name);
        }
    }
static void Main(string[] args)
        {
            //B b = new B();
            Son s = new Son();
            s.boil();
            Console.WriteLine("Hello World!");
        }

執行結果:

 

 

執行結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM