Faço curso a distancia de java,não consigo fazer exercício pra hoje meia noite,me ajudem por favor!

0 respostas
P

/* Fiz parte do exercício, estou com dificuldades nas classes Oficina(que não sei se ta certo e ta faltando o tratamento de entres ou saidas ilegais) e Teste(não consigo chamar os métodos), colocar o enunciado aqui só do que eu não fiz direito ou não consegui fazer porque é muito grande o enunciado completo.Desculpa ,sei que é grande gente mas realmente preciso da ajudo pois preciso entregar isso hoje até meia noite, muito obrigado pela atenção.
Deixo em anexo o exercício todo para quem quiser…!

3-c)Alteração da classe Oficina: Remova o método manutencao() da
classe Oficina. Defina um atributo privado chamado boxes do tipo array
de veículos com 5 posições. Os boxes funcionarão como uma fila de
manutenções. Crie dois novos métodos públicos: entrada(Veiculo v) e
saida(). O primeiro, entrada(Veiculo), recebe uma instância de Veiculo
como parâmetro e o adiciona na primeira posição livre do array boxes. O
segundo, saida(), recupera o primeiro veiculo do array e chama o seu
método manutencao(). Em seguida, o método saída() deverá
reposicionar os elementos do array de modo que o segundo veículo
passe a ocupar a primeira posição e assim sucessivamente até que não
haja mais veículos na fila de manutenções. A classe Oficina não deve
permitir entradas ou saídas ilegais no array de veículos, ou seja, os
métodos entrada(Veiculo v) e saída() devem tratar as condições de fila
cheia e fila vazia.

e)Criação da classe Test: Crie uma classe de teste com o método main
que realize as seguintes operações: preencher as 5 posições do array
boxes utilizando o método entrada(); realizar uma saída e duas novas
entradas na sequência e depois mais 6 saídas.

[b]public interface Veiculo

{

public static final int AEREO = 1;

public static final int AQUATICO = 2;

public static final int TERRESTRE = 3;

public void manutencao();
}

public class Automovel implements Veiculo

{

final int tipo;

private Automovel(int tipo)

{

this.tipo=tipo;

System.out.println(Automovel do tipo + tipo);

}
public void listarVerificacoes()

{

System.out.println("Automovel.listarVerificacoes ");

}
private void ajustar()

{

System.out.println("Automovel.ajustar ");

}
private void limpar()

{

System.out.println("Automovel.limpar ");

}
private void mudarOleo()

{

System.out.println(Automovel.mudouOleo);

}
public void manutencao()

{

ajustar();

limpar();

mudarOleo();

}

}
public class Bicicleta implements Veiculo

{

final int tipo;

private Bicicleta(int tipo)

{

this.tipo = tipo;

System.out.println(Bicicleta do tipo + tipo);

}
private void listarVerificacoes() {

System.out.println("Bicicleta.listarVerificacoes ");

}
private void ajustar() {

System.out.println(Bicicleta.ajustar);

}
private void limpar() {

System.out.println(Bicicleta.limpar);

}
public void manutencao()
{
    ajustar();
    limpar();
}

}[/b]

[b]public class Oficina

{

Random r = new Random();

private Veiculo boxes[] = new Veiculo[5];
public void entrada(Veiculo v)
  {
      try
      {
          this.boxes[0] = v;
          System.out.println("Entrada realizada");
          for(int i = 1;i < boxes.length;i++)
          {
              this.boxes[i] = v;
              System.out.println("Entrada realizada");
          }
      }
      catch(ArrayIndexOutOfBoundsException erro)
      {
          System.out.println("Tentativa de acesso a um elemento inexistente no array");
      }
  }
  public void saida(Veiculo v)
  {
      try
      {
          this.boxes[0] = v ;
          v.manutencao();
          System.out.println("Saida realizada");
          for(int i = 1;i < boxes.length;i++)
          {
              this.boxes[i] = v;
              v.manutencao();
              System.out.println("Saida realizada");
          }
      }
      catch(ArrayIndexOutOfBoundsException erro)
      {
          System.out.println("Tentativa de acesso a um elemento inexistente no array");
      }

  }

}

public class Teste

{

public static void main(String args[])

{

Oficina a = new Oficina();

for(int i = 0;i < 6;i++)

{

a.entrada();

}

for (int i = 0; i < 1;i++)

{

a.saida();

}for(int i = 0;i < 6;i++)

{

a.entrada();

}

for(int i = 0;i < 7;i++)

{

a.saida();

}

}

[/b]
Criado 5 de setembro de 2010
Respostas 0
Participantes 1