0
public interface EXPeekableQueue<E extends Comparable<E>>{
     public void enqueue(E e);
}

public interface EXammutableQueue<E>{
   public EXammutableQueue<E> enqueue(E e);
   public E peek();
}

这个语法到底是什么意思?我无法理解 Java 泛型类。有人可以给我一个好的教程或pdf文件的链接吗?谢谢!!

4

3 回答 3

3

没有比Oracle java教程更好的学习java特性的地方了,给你:

http://docs.oracle.com/javase/tutorial/java/generics/

于 2013-08-18T05:51:27.400 回答
0

我一直觉得这个网站很有用:http ://www.angelikalanger.com/GenericsFAQ/FAQSections/ParameterizedTypes.html#Topic1 。

关于您的代码,第一行中的右尖括号似乎太多了。还有更多吗?

于 2013-08-18T05:55:40.340 回答
0

第二个更容易。实现此接口时,您需要使用具体的元素类进行实例化,例如 MyElementClass。然后您需要提供两个方法,其中 E 替换为 MyElementClass。

class My implements EXammutableQueue<MyElement>{

......

public EXammutableQueue<MyElement> enqueue(MyElement e){
......
}

public MyElement peek(){...}

....
}

现在您可以对第一个执行相同的操作,此外,它还要求 E 是与自身可比较的成员。

于 2013-08-18T06:17:26.553 回答