Iterator
在接口而不是内部类上指定泛型类型参数。
import java.util.Iterator;
public class Node<T> {
class NodeIterator implements Iterator<Node<T>> {
@Override
public boolean hasNext() {
// TODO Auto-generated method stub
return false;
}
@Override
public Node<T> next() {
// TODO Auto-generated method stub
return null;
}
@Override
public void remove() {
// TODO Auto-generated method stub
}
}
}
我怀疑该语言不允许这样做,因为没有什么可以阻止您实例化与外部类类型不匹配的具体类型,例如:
//calling code
Node<Integer> node = new Node<Integer>();
//Node.java
public class Node<T>{
NodeIterator<String> nodeIterator = new NodeIterator<String>();
}