在下面的簡單代碼中,我試圖訪問SubClass中定義的方法'PrintMessage'。我創建了一個SuperClass的對象,並啓動了一個SubClass的實例。我想明白爲什麼這是錯誤的?如何從超類的對象中調用子類的方法?
我在執行代碼時出現以下錯誤。
錯誤1'.SuperClass'沒有包含'PrintMessage'的定義,也沒有找到接受'SuperClass'類型的第一個參數的擴展方法'PrintMessage'(你缺少using指令還是程序集引用? )
class Program
{
static void Main(string[] args)
{
SuperClass objSuperClass = new SubClass();
//The following statement gives me error
objSuperClass.PrintMessage();
}
}
public abstract class SuperClass
{
}
public class SubClass : SuperClass
{
public void PrintMessage()
{
Console.WriteLine("Testing");
}
}
}