我在循环使用我的通用集合时遇到问题。虽然我的类没有直接显示任何编译错误,但IDE(Netbeans)在项目树中的类图标上显示“错误解析文件”时出错。任何帮助,将不胜感激。
我的代码
public abstract class AutocompleteCacheImpl<E> implements AutocompleteCache {
public void store(Collection<E> es) {
for(E e : es) {
store(e);
}
}
public void store(E e) {
//do something
}
}
接口
public interface AutocompleteCache<E> {
public void store(Collection<E> es);
}
答案 0 :(得分:3)
public class AutocompleteCacheImpl&lt; E&gt;实现AutocompleteCache
这是错误的,因为AutocompleteCache接口也是通用的。
试试这个:
public abstract class AutocompleteCacheImpl<E> implements AutocompleteCache<E>
此外,关键字public
应位于关键字abstract
答案 1 :(得分:2)
您需要指定泛型类型(AutocompleteCache
==&gt; AutocompleteCache<E>
),让编译器知道AutocompleteCacheImpl
中的E与{{1中的E'相同}}:
AutocompleteCache