Magna Concursos
1377857 Ano: 2007
Disciplina: TI - Desenvolvimento de Sistemas
Banca: CESPE / CEBRASPE
Orgão: CBM-DF
public class Lista {
protected static final int TAM_MAX = 10;
protected int tamanho, maximo;
protected Elemento primeiro, ultimo;
public Lista(int maximo){
if(maximo <= 0)
throw new IllegalArgumentException();
if(maximo > TAM_MAX) this.maximo = TAM_MAX;
else this.maximo = maximo;
}
public final synchronized Elemento remover()
throws InterruptedException {
Elemento no;
while(primeiro==null) wait();
no = primeiro;
primeiro = primeiro.getProximo();
tamanho--;
if(tamanho==(maximo-1)) notify();
return no;
}
}
public class Fila extends Lista {
public Fila(int maximo){
super(maximo);
}
public synchronized void inserir(Elemento no)
throws InterruptedException {
while(tamanho == maximo) wait();
if(primeiro == null) primeiro = no;
else ultimo.setProximo(no);
ultimo = no;
tamanho++;
if(primeiro.getProximo()==null) notify();
}
}
Considerando o código Java mostrado acima, julgue o seguinte item.
Os atributos definidos na classe Lista podem ser acessados por métodos na classe Fila, e TAM_MAX é uma constante. O atributo maximo declarado na classe Lista pode ser inicializado com um parâmetro informado quando a classe Fila é instanciada ou com o valor TAM_MAX.
 

Provas

Questão presente nas seguintes provas