![]() |
1
-1
场景1是因为您正在使用
场景2是因为您正在使用通用接口引用
编辑:注意到投票结果被否决,我假设有人认为这个答案不够完整;
如果op希望正确地看到错误2的输出,则可以将类型实例化为
|
![]() |
2
1
你在这里看到的是接口的重新实现。在第一种情况下,基类是实现接口的最派生类,因此它将接口的方法绑定到它的方法实现。由于该方法不是虚拟的,因此它不能也不会被重写,因此这是在基类或派生类上使用接口时调用的方法。 在第二个示例中,您在派生类上重新实现接口(通过将其添加到类的声明中)。这将重新绑定接口的方法 使用那种类型 . 因为它有一个合适的方法,所以每当使用接口为派生类型分派方法时,都会使用它的实现。 |
|
Robert King · Unity C#语法问题-转换位置 1 年前 |
![]() |
JBryanB · 如何从基本抽象类访问类属性 1 年前 |
|
law · 检查答案按钮的输入字符串格式不正确 2 年前 |
![]() |
i_sniff_ket · 在unity之外使用unity类 2 年前 |