不管時Java還是c#這種面向對象的編程語言,有一個重要的特點,就是多態,base最多使用地方就是在多態上,base可以完成創建派生類實例時調用其基類構造函數或則調用基類上已經被其他方法重寫的方法
1關於base調用基類構造函數
public class A
{
public A()
{
Console.WriteLine("Build A");
}
}
public class B:A
{
public B():base()
{
Console.WriteLine("Build B");
}
static void Main()
{
B b = new B();
Console.ReadLine();
}
}
創建一個B的實例對象,獲得結果是同時打印Build A和Build B.
2.關於base在派生類中調用基類的方法。
public class A
{
public virtual void Hello()
{
Console.WiriteLine("Hello");
}
}
public class B : A
{
public override void Hello()
{
base.Hello();//調用基類的方法,顯示Hello
Console.WiriteLine("World");
}
}
這樣如果程序調用B.Hello()獲得的效果將會使Hello World.