【发布时间】:2016-05-18 03:21:34
【问题描述】:
在java中,我可以这样做:
public class A {
//...
}
public class B extends A {
//...
}
public interface I {
void test(A a);
}
public class C implements I {
//i can use class B as parameters in java but how to do in .net ?
// not work in .net
@override
public void test(B b){
}
}
我可以在 java 中使用 B 类作为参数,但在 .net 中怎么做?
【问题讨论】:
-
这甚至在java中都行不通,为了实现
I,测试参数类型必须是A。 -
如果 Java 允许这样做,我会感到非常惊讶,因为这会破坏接口的约定。
-
public void test(A a){/*do something*/}是 C 类唯一可用的选项。如果没有 public 关键字,则会出现编译时错误。 -
@Saurav Sahu 对此感到抱歉,我忘了
public