當我使用TemplateA類型的參數調用EntryPoint時,總會收到一個異常,因爲總是會調用第一個重載。
我期望發生的是最具體的方法(第二重載)將由於動態綁定而被調用。
任何想法爲什麼?重載方法
private object _obj;
public void EntryPoint(object p)
{
myFunc(p);
}
//first overload
private void myFunc(object container)
{
throw new NotImplementedException();
}
//second overload
private void myFunc(TemplateA template)
{
_obj = new ObjTypeA(template);
}
//third overload
private void myFunc(TemplateB template)
{
_obj = new ObjTypeB(template);
}