鉴于以下示例代码,我希望能够注释一个方法绝对需要实现一个接口。
interface X {
void a(string x);
}
class Y : X {
[EnsureImplementsInterface]
public void a(string x) { .. }
[EnsureImplementsInterface] // Should result in some form of "error"
public void a(object x) { .. }
}
显式接口实现不合适,因为主要用途是通过' var'使用陈述;此外,更改为显式接口会破坏现有合同。
override
关键字不适用/不可用,因为没有覆盖任何方法,C#也不会那样。