我在Java中使用泛型时遇到了接口继承的问题。 这里是一个exampe:Java泛型与接口继承结合使用
public interface Type0 { }
public interface Type1 extends Type0 {
void method();
}
public interface SomeInterface0<T extends Type0> {
T get();
}
public interface SomeInterface1<T extends Type1> extends SomeInterface0<T> { }
现在,当我尝试使用SomeInterface1
类型的字段,不类型参数的Java comiler治疗的方法SomeInterface1.get()
结果作为Type0
类型。而不能编译这样的事情:
...
SomeInterface1 si1;
...
si1.get().method();
那么,为什么SomeInterface1<T extends Type1>
有T
= Type0
默认vlue?
谢谢,我明白了! )) – dbolotin