为什么我的界面没有继承?

时间:2009-04-08 17:26:01

标签: c# .net oop

我一定做错了什么

public interface IActor
{
    //actor stuff
}

public class BaseShip : IActor
{
    //base ship stuff
}

public class PlayerShip: BaseShip
{
    //Only the stuff for this particular ship
}

为什么这不起作用:

IActor player = new PlayerShip();

或者

List<IActor> actors = new List<IActor>(){new PlayerShip()};

我得到无法从[PlayerShip]转换为[IActor]

注意:为了简洁起见剪切代码

<小时/>

更新

我意外地在两个不同的命名空间中定义了接口。没有更多的东西。

1 个答案:

答案 0 :(得分:6)

你确定这是你的结构吗?我复制并粘贴了你的代码和编译过的动作,并且运行正常。

编辑:

你们需要退后一步......接口肯定会传播继承链。你告诉我,一个继承的控件没有实现IDisposable?