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!"); }
执行结果:
执行结果: