当前位置:  开发笔记 > 编程语言 > 正文

为什么这个通用接口堆栈不起作用?

如何解决《为什么这个通用接口堆栈不起作用?》经验,为你挑选了1个好方法。

我有一堆通用接口和类

public interface IElement {
// omited
}

class Element implements IElement {
// omited
}

public interface IElementList  extends Iterable {
   public Iterator iterator();
}

class ElementList implements IElementList {

    public Iterator iterator() {
       // omited
       }
}


public interface IElementListGroup> {
    public E getChosenElementList();
}


class ElementListGroup implements IElementListGroup {
    public ElementList getChosenElementList() {
        // omited
    }
}

然后是一个简单的代码

ElementListGroup group;

for(Element e : group.getChosenElementList())
{
 // omited
}

而对于关键字throwe的行"无法从元素类型Object转换为Element"编译器错误.

提前致谢.



1> Michael Myer..:

IElementList需要实施Iterable.否则,接口指定Iterator iterator(),而不是Iterator iterator().这使编译器认为您正在迭代Objects.

我做了这个改变,它编译得很好(添加一些null返回后).

推荐阅读
mobiledu2402851203
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有