Ho un esercizio, aldilą della corretteza logica ci deve essere un errore diverso:

codice:
import java.io.*;

public interface Stack <E>
{
	public int size();
	//Return numero elementi
	
	public boolean isEmpty();
	//Return true se lo stack č vuoto
	
	public void push(E object);
	//Pone in cima allo stack un elemento
	
	public E pop(); 
	//Elimina l'elemento in cima allo stack e lo restituisce
	
	public E top(); 
	//Indica qual č l'elemento in cima allo stack senza estrarlo
	
}

public class Node <E>{
	private E element;
	private E next;
	
	public Node(E element, E next)
	{
		this.element=element;
		this.next=next;
	}
	
	public Node <E> getElement() {return element;}
	
	public Node <E> getNext() {return next;}

	public void setElement(E object){ element=object;}
	
	public void setNext(Node <E> e){element.getNext()=e;}
}

public class NodeStack <E> implements Stack <E> {
	
	private Node <E> top;
	private int size;
	
	public NodeStack()
	{
		top=null;
		size=0;
	}
	
	public int size() {return size;}
	
	public boolean isEmpty(){return (top==null);}
	
	public void push(E element){
		Node <E> n=new Node <E>(element,top);
		top=n;
		size++;
	}
	
	public E pop(){
		if(E.isEmpty()) throw new EmptyStackException("Stack vuoto");
		E object=top.getElement();
		top=top.getNext();
		size--;
		return object;
	}
	
	public E top()
	{
		if(E.isEmpty()) throw new EmptyStackException("Stack vuoto");
		return top.getElement();
	}
	
	public String toString()
	{
		
}
		
	
	
}

public class EsercizioI{


public static void main(String []args)
{
	FileReader reader=null;
	BufferedReader buffer=null;
	PrintWirter out=null;
	
	try{
		reader=new Filereader("input.txt");
		buffer=new BufferedReader(reader);
		out=new PrintWriter("OUTPUT.txt");
		
		NodeStack <String> stack=new NodeStack(); 
		
		String sequenze="";
		
		while((sequenze=buffer.readLine())!=null)
			stack.push(sequenze);
			
			for(Node node=new Node(); node.getNext()!=null; node=node.getNext())
			{
				boolean parentesizzata=false;
				String element=node.getElement();
				
				for(int i=0; i<element.length(); i++)
				{
					if(
						(element.charAt(i)=="(" && element.charAt(element.length()-1-i)==")") || 
						(element.charAt(i)=="{" && element.charAt(element.length()-1-i)=="}")
					||(element.charAt(i)=="[" && element.charAt(element.length()-1-i)=="]")
					||(element.charAt(i)=="<" && element.charAt(element.length()-1-i)==">"))
					
					parentesizzata=true;
					
				
					else
					{
						for(int j=0; j<element.length()-1; j++)
						{
							if(
							(element.charAt(j)=="(" && element.charAt(j+1)==")") || 
							(element.charAt(j)=="{" && element.charAt(j+1)=="}")
							||(element.charAt(j)=="[" && element.charAt(j+1)=="]")
							||(element.charAt(j)=="<" && element.charAt(j+1)==">"))
					
							parentesizzata=true;
							
						}
						
						i=element.length()-1;
					}
				}
				
				if(parentesizzata==true)
					out.print("OK");
				else out.print("ERRORE");
				
			}
		}
		
		finally{
			
				if(reader!=null)reader.close();
			
				if(out!=null)out.close();
			}
}						
}
Gli errori gią partono per l'interfaccia, che mi dice deve essere dichiarata a parte, e anche la classe Nodo, ma perchč mi dą quest'errore?