|
|
1
4
我不知道有什么直接的方法可以做到这一点,但显然可以反过来使用InterfaceMapping:迭代由方法的声明类型实现的所有接口,检查该方法是否在该接口的接口映射中:
虽然这看起来有点低效,但大多数类型实现的接口很少,所以这应该不是什么大问题。尽管它不是非常优雅,但我还是很感激! |
|
|
2
1
然而,好的一面是,这种微妙的差异导致人们意识到
这里有一个方法显式实现了两个接口方法。如果可以得到原始接口类,或者甚至原始接口方法,您会得到哪一个?你如何解决这个歧义? 我不是CLR内部的专家,但我相信接口映射是单向的。当您隐式或显式地实现接口或方法时,编译器将创建一个映射 接口 到 实现,这就是它处理针对接口的方法调用所需的全部内容。
|
|
|
3
0
尝试
|
|
|
JBryanB · 如何从基本抽象类访问类属性 2 年前 |
|
|
Gabe Tucker · 无法在golang中分配接口对象指针 3 年前 |
|
|
jkone27 · F#-在编译时从字符串生成简单的空类型 8 年前 |
|
|
John Bustos · C#通用工厂模式,不说明通用工厂模式的类型 8 年前 |
|
|
Randall Flagg · 访问propertyinfo中的属性 8 年前 |
|
|
Kacper · 在反映的全名和成员c后的“*”中,“+”是什么意思# 8 年前 |
|
|
tobeypeters · 反射铸造 8 年前 |
|
|
myst02 · 如何在另一个方法之后调用该方法? 8 年前 |