Duvida com Excessão

Olá a todos:

Estou fazendo um programinha produtor/consumidor e fiz uma classe para tratar a exceção caso a fila que eu implementei ficar cheio - se for add um objeto - ou vazia - se for remover um objeto. Estava tudo lindo até o momento que fui começar a programar o produtor no método run() da thread. Quando solicito que ele adicione um objeto na fila, ele diz que o throws que usei na outra classe é “unreachable”. Como consigo tratar isso? Segue abaixo os códigos

public class CircularQueue implements Queue {

    int total, inicio, fim;
    PrintJob[] lista;

    public CircularQueue(int capacity) {
        lista = new PrintJob[capacity];
        inicio = 0;
        fim = 0;
        total = 0;
    }

    @Override
    public synchronized void addBack(PrintJob job) throws QueueException {
        if (total < lista.length) {
            lista[fim] = job;
            fim++;
            total++;

            if (fim > lista.length) {
                fim = 0;
            }
        } else {
            throw new QueueException("Fila está cheia");
        }

    }

    @Override
    public synchronized void removeFront() throws QueueException {

        if (!isEmpty()) {
            notify();
            lista[inicio] = null;
            inicio++;
            total--;
            if (inicio > lista.length) {
                inicio = 0;
            }

        } else {
            throw new QueueException("Lista está Vazia");
        }
    }

    @Override
    public boolean isEmpty() {
        if (total == 0) {
            return true;
        } else {
            return false;
        }

    }

    @Override
    public int getNumberOfJobs() {
        return total;
    }
}

[code]public class Producer implements Runnable{

String name;
Queue queue;
PrintJob a;

public Producer(String name, Queue queue){
    
    this.name=name;
    this.queue=queue;
}
        
@Override
public void run(){
    for (int i=0;i<=((int)(10+20*Math.random()));i++){
        queue.addBack(a=new PrintJob("dfs")); //Aqui gera o erro!
    }
}[/code]

[code]public class QueueException extends Exception {

public QueueException(String s) {
    super(s);
}

}[/code]

Ninguem?

Fala ai renato.elric

Teria como vc postar a classe de Excessão que vc criou "QueueException "

Está postada, é a ultima dos códigos postados. É bem simples, apenas passo para a superclasse uma string, como “Fila Cheia”