指定創建派生類實例時應調用的基類構造函數;
調用基類上已被其他方法重寫的方法。
注意:不能從靜態方法中使用base關鍵字,base關鍵字只能在實例構造函數、實例方法或實例訪問器中使用。
例:訪問關鍵字this和base關鍵字示例;創建基類Person,包含兩個數組成員name和age、一個具有兩個參數的構造函數、一個虛函數GetInfo()以顯示數據成員name和age的內容;創建派生類Student,包含一個數據成員studentId,一個具有三個參數的派生類構造函數,并用:base調用基類構造函數、并重寫所繼承基類的虛方法GetInfo(),調用基類的方法顯示name和age的內容。
public class Person //基類、等同于public class Person:Object
{
public string name;
public uint age;
public Person(string name,uint age)//基類的構造函數
{
this.name = name; //this 關鍵字引用類的當前實例
this.age = age; //this 關鍵字引用類的當前實例
}
public virtual void GetInfo()
{
Console.WriteLine("Name: {0}",name);
Console.WriteLine("Age:{0}",age);
}
}
public class Student:Person//派生類
{
public string studentId;
//派生類構造函數并用:base調用基類構造函數
public Student(string name,uint age,string studentId):base(name,age)
{
this.studentId = studentId;
}
public override void GetInfo()
{
//調用基類方法
base.GetInfo();
Console.WriteLine("StudentId: {0}",studentId);
}
}
public class Program
{
static void Main(string[] args)
{
Student objstudent=new Student("jeamsluu",99,"20140101011");
objstudent.GetInfo();
Console.ReadKey();
}
}
}
新聞熱點
疑難解答