Jef*_*rey 3 java eclipse ambiguous ambiguous-call
编辑:这根本不是代码的问题,而是Groovy Eclipse插件中的一个错误(http://jira.codehaus.org/browse/GRECLIPSE-373)
Eclipse给出了一个关于Java程序中模糊类型的奇怪错误消息,我真的不明白为什么.我有一个接口,它接受一个通用参数,指示它返回的数据类型.
public interface InterfaceA<T> {
T getData();
}
Run Code Online (Sandbox Code Playgroud)
它的一个实现看起来像这样:
public class Impl<T extends AnotherClass> implements InterfaceA<Collection<T>> {
public Collection<T> getData() {
// get the data
}
}
Run Code Online (Sandbox Code Playgroud)
InterfaceA还有一个容器
public class Container<T extends InterfaceA>
{
private T a;
public Container(T a) {
this.a = a;
}
public T getA() {
return a;
}
}
Run Code Online (Sandbox Code Playgroud)
这样做会导致"getData is ambiguous"错误.
Container<Impl<AnotherClass>> c = new Container(new Impl<AnotherClass>());
Collection<AnotherClass> coll = c.getA().getData();
Run Code Online (Sandbox Code Playgroud)
我很难过这个.
| 归档时间: |
|
| 查看次数: |
7998 次 |
| 最近记录: |