Java 项目赢得';如果不给出解析错误,就不能完全编译

Java 项目赢得';如果不给出解析错误,就不能完全编译,java,linked-list,Java,Linked List,我写这段代码是为了实现一个作为链表的堆栈,但是当我编译这部分代码时,我不断地得到一个错误,我不知道为什么 我肯定知道,它不应该给我这个错误,因为有足够的括号,没有一个是不合适的地方,我希望 错误: C:\Users\Michelle\Desktop\ITB\Semester 5\Data Structures & Algorithms\Assignment\ListReference.java:108: error: reached end of file while parsing }

我写这段代码是为了实现一个作为链表的堆栈,但是当我编译这部分代码时,我不断地得到一个错误,我不知道为什么

我肯定知道,它不应该给我这个错误,因为有足够的括号,没有一个是不合适的地方,我希望

错误:

C:\Users\Michelle\Desktop\ITB\Semester 5\Data Structures & Algorithms\Assignment\ListReference.java:108: error: reached end of file while parsing
}
 ^
1 error
我的代码:

public class ListReference implements StackInterface {

    private Node top;
    //private Object item;
    private int NumItems;

    public ListReference() {
        NumItems = 0;
        top = new Node(null);
    }

    public boolean isEmpty() {
        return NumItems == 0;
    }

    public int size() {
        return NumItems;
    }

    /*public Node find(int index) {
        Node curr = tail;

        for(int skip = 1; skip < index; skip++) {
            curr.getNext();
        }

        return curr;
    }*/

    public Object get(int index) {
        if(index <= 0)
            return null;

        Node ListReference = top.getNext();

        for(int i=1; i < index; i++) {
            if (ListReference.getNext() == null)
                return null;

            ListReference = ListReference.getData();
        }
    }

    public void add(int index, Object item) {
        Node ListReferenceTemp = new Node(item);
        Node ListRefCurr = top;

        while(ListRefCurr.getNext() != null) {
            ListRefCurr = ListRefCurr.getNext();
        }

        ListRefCurr.setNext(ListReferenceTemp);
        NumItems++;
    }

    public void add(Object data) {
        Node ListReferenceTemp = new Node(item);
        Node ListRefernce = top;

        for(int i=1; i < index &&  ListReference.getNext() != null; i++) {
            ListReference = ListReference.getNext();
        }

        ListReferenceTemp.setNext(ListReference.getNext());
        ListReference.setNext(ListReferenceTemp);
        NumItems++;
    }

    // removes the element at the specified position in this list.
    public boolean remove(int index) {
        // if the index is out of range, exit
        if (index < 1 || index > size())
            return false;

        Node ListRefCurr = top;
        for (int i = 1; i < index; i++) {
            if (ListRefCurr.getNext() == null) {
                return false;
            }

            ListRefCurr = ListRefCurr.getNext();
        }

        ListRefCurr.setNext(ListRefCurr.getNext().getNext());
        NumItems--; // decrement the number of elements variable
        return true;
    }

    public String toString() {
        Node ListReference = top.getNext();
        String output = "";

        while (ListREference != null) {
            output += "[" + ListRefCurr.getData().toString() + "]";
            ListRefCurr = ListRefCurr.getNext();
        }

        return output;
    }
公共类ListReference实现StackInterface{
私有节点顶部;
//私人物品;
私有内部网络;
公共列表引用(){
NumItems=0;
top=新节点(空);
}
公共布尔值为空(){
返回NumItems==0;
}
公共整数大小(){
返回NumItems;
}
/*公共节点查找(int索引){
节点电流=尾部;
对于(int skip=1;skip
您的文件以一个方法的右大括号结尾-您需要另一个右大括号来关闭类声明。请注意,这是一个很好的例子,说明了进一步简化代码是有意义的,直到您得到一个最小的示例…您已经发布了100多行代码,其中很少有任何内容为了解决您的实际问题。只需在文件末尾添加一个}。IDE在这里也很有用,因为大多数IDE都会显示某种形式的可视括号匹配,以便您可以看到要关闭的括号。此外:“我肯定知道,它不应该给我这个错误,因为有足够的括号”-而不是在您发布的内容中。查找编译器错误的情况非常罕见。。。你应该总是假设是你的代码被破坏了,而不是编译器。我猜他的类是好的,但他在复制/粘贴时忘记了一个“}”。问题是“Object get()”函数,末尾没有“return”。