这是故事。我创建了一个界面IVehicle
。我明确实施了我的课程中的界面Vehicle.cs
。为什么我不能在明确实现接口的类中调用方法?
这里是我的接口:
Interface IVehicle
{
int getWheel();
}
这里是我的类:
class Vehicle: IVehicle
{
public int IVehicle.getWheel()
{
return wheel;
}
public void printWheel()
{
Console.WriteLine(getWheel());
}
}
注意getWheel()
明确实施。现在,当我尝试在我的Vehicle类中尝试调用该方法时,我收到一个错误,指出getWheel()
在当前上下文中不存在。有人能帮助我了解我做错了什么吗?
作为一个Java的人接口类型
然后调用成员,我很奇怪,为什么这个令人费解的事情存在?为什么会有人想要上述存在,它获得了什么优势? – 2010-03-26 02:11:52
在明确实施的成员上指定可见性修饰符是语法错误。一旦您的对象已被转换为您的界面类型,该成员始终可以访问。 – Trillian 2010-03-26 02:14:32
@mP如果您正在使用通用成员实现多个接口,则这允许您为每个接口提供不同的定义。它还增加了清理智能感知,因为显式成员不可见或不可用,除非您投射到适当的界面。 – 2010-12-21 18:27:33