Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
找到…对象,但预期使用Java堆栈时出现myClass错误_Java_Class_Object_Stack - Fatal编程技术网

找到…对象,但预期使用Java堆栈时出现myClass错误

找到…对象,但预期使用Java堆栈时出现myClass错误,java,class,object,stack,Java,Class,Object,Stack,当我尝试以以下形式编译代码时,生成编译错误“不兼容类型-找到java.lang.Object,但预期为E”: public class E { private int x; public E { x = 0; } } public class Class { private E o; private E b; private Stack stack = new Stack(); public void f

当我尝试以以下形式编译代码时,生成编译错误“不兼容类型-找到java.lang.Object,但预期为E”:

public class E {
    private int x;       

    public E {
        x = 0;
    }
}

public class Class {
    private E o;
    private E b;
    private Stack stack = new Stack();

    public void foo() {
        stack.push(o);
    }

    public void bar() {
        **b = stack.pop();**
    }
}
试着用E

public void bar() {
    b = (E)stack.pop();
}

您可以声明堆栈包含
E
s:

private Stack<E> stack = new Stack<E>();
私有堆栈=新堆栈();

谢谢,我是Java新手,这是正确的实现方法吗?没有?这样堆栈就可以存储多种类型了吗?是的,你可以按照Arne的建议来做。