多重继承的问题,各位大虾请关注
问题题目不大正确.问题是这样的:
有一个空接口
interface Myinterface{}
有一个抽象类,包含一个抽象方法
abstract class AbClass
{
public abstract void method();
}
有一个具体类,实现接口,继承抽象类
class ConcreteClass : Myinterface, AbClass
{
public override void method()
{...};
}
在客户代码中有:
//字段声明
Myinterface myinterf = null;
//初始化
myinterf = new ConcreteClass();
//调用基类的method
myinterf.method();
问题来了,上一句调用肯定通不过,因为MyInterface接口中没有method()方法,如要通过,必须把
myinterf类型转换为ConcreteClass. 可是这样的转换就把代码写死了,如果我初始化另外一个实现
同样接口,继承同样抽象类的具体类对象时,显式类型转换的话就通不过了.
各位可有高招?