假设我有一个C
继承自 2 个接口(I1
和I2
)的类。我还有两个版本的方法 ( DoStuff
),每个版本都将其中一个接口作为参数。如果我打电话DoStuff(C)
,哪一个会被打电话?
interface I1 { ... }
interface I2 { ... }
class C : I1, I2 { ... }
int DoStuff(I1 target) { ... }
int DoStuff(I2 target) { ... }
//What gets called here?
C target = new C()
DoStuff(target)
如果I2
派生自I1
,我认为它相对简单 -I2
版本被调用。我对接口独立的情况感兴趣。
假设我无法编辑C
,I1
或I2
. 如果这有什么不同的话,还有 .NET 2.0。