我有一个基类和一个接口。现在,我从这些创建一个子类。如果创建接口类型的引用变量以指向子类的对象,是否可以使用它访问基类方法?

Class BaseClass
{
public void baseClassMethod()
{
.....
}
}
Interface MyInterface
{
public void Interfacemethod();
}


Class ChildClass:BaseClass, MyInterface
{
....

}


....


main()
{
MyInterface myclass= new ChildClass ();
myclass.baseClassMethod();//Is this possible? y?
 }

最佳答案

变量myclass的静态类型为MyInterface,它没有名为baseClassMethod()的方法-否,这是行不通的。您可能需要将引用强制转换回BaseClasssChild(可以),或者将方法添加到MyInterface(或某些其他接口)。

关于c# - 使用接口(interface)引用变量调用基类方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16643930/

10-10 08:17