我有一个java作业,我应该在其中构造一个像Multiset一样工作的类。该类必须实现接口集合。我试图这样做并声明集合中的所有方法(在此处找到)。但是当我编译这段代码时,我得到以下错误:
error: TreeMultisetNy is not abstract and does not override abstract method retainAll(Collection<?>) in Collection
为什么会这样?
这是我的代码:
import java.util.*;
public class TreeMultisetNy<E extends Comparable<E>> implements Collection<E> {
private Map<E, Integer> data = new TreeMap<E, Integer > ();
public boolean add(E ny) {
return true;
}
public boolean addAll(Collection<? extends E> c){
return false;
}
public void clear() {
}
public boolean contains(E what) {
return false;
}
public boolean containsAll(Collection<?> c) {
return false;
}
public boolean equals(E what) {
return false;
}
public int hashCode() {
return 0;
}
public boolean isEmpty() {
return false;
}
public Iterator<E> iterator() {
return null;
}
public boolean remove(E what) {
return false;
}
public boolean removeAll(Collection<?> c) {
return false;
}
public boolean retainAll(Collection<?> c) {
return false;
}
public int size() {
return 0;
}
public Object[] toArray() {
return null;
}
public Object[] toArray(Object[] a){
return null;
}
}
我发现了这个问题: How to create a class that implements java.util.collections 但我不相信我犯了和那个人一样的错误,还是我错了?
请给我一些提示,我已经编码 php 多年,但面向对象对我来说是新的!