簡體   English   中英

接口中的Java泛型問題

[英]issue with java generics in an interface

我正在實現一個可以管理堆棧的接口,我有以下代碼:

public interface Stack <E>{
    public int size();
    public boolean isEmpty();
    public E top();
    public void push(E item);    //error here

實現此接口的類具有:

public class StackArray<E> implements Stack{
    private E array[];
    private int top=-1;
    public StackArray(int n){
        array=(E[]) Array.newInstance(null, n); ////not quite sure about this
    }
    //more code
    public void push(E item){
        if (top==array.length-1) System.out.println("stack is full");
        else{
            top++;
            array[top]=item;
        }
    }

我得到的錯誤是我沒有重寫push方法,我看到兩者具有相同的簽名,但是我不太確定。

我該如何解決?

你不是綁定E參數StackArrayE參數Stack 使用此聲明:

public class StackArray<E> implements Stack<E>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM