如何在内部类中使用参数化泛型类型?
2022-09-02 23:58:48
我正在尝试实现具有泛型参数化类型的内部类。
这是我的代码的简短版本:
public class AVLTree<T extends Comparable<? super T>> implements Iterable<T> {
...
private class BinaryNode<T extends Comparable<? super T>> {
...
}
private class TreePreOrderIterator<E extends Comparable<? super E>> implements Iterator<E> {
...
}
}
它不起作用。Eclipse/Java 给我一个警告,即内部类上的类型参数正在“隐藏”超类的参数。关于如何解决这个问题的任何想法?T
编辑:我添加了另一个内部类,我遇到了问题:.对于 、 和 的泛型类型将相同。内部类需要访问 AVLTree 中的字段。TreePreOrderIterator
T
AVLTree
BinaryNode
TreePreOrderIterator
编辑2:此外,访问 a ,这是一个冲突。Iterator
BinaryNode<T>
(注意:这是我为一个班级做的更大项目的一部分。如果需要任何其他信息,请询问。