Baixe o app para aproveitar ainda mais
Prévia do material em texto
UNESP/FEG/DMA Programação de Computadores II - Prof. Senne Exercício de Laboratório 8.1 ATENÇÃO: Não esquecer de incluir os nomes dos alunos da turma nas classes Java. Atividade: Classe Corrida. A GUI a seguir mostra a movimentação de um animal em uma corrida. O pato é capaz apenas de andar e o gato pode andar ou pular. Pato e Gato são subclasses da classe Animal. A classe Pato implementa a interface Andar e a classe Gato implementa as interfaces Andar e Pular, conforme mostra a hierarquia de classes: Animal − int lin − int col − int dir − int num + Animal(int l, int c, int d, int n) . . . + int gerarAleatorio(int a, int b) Andar Pular + void andar() + void pular() Pato Gato + Pato() . . . + Gato() . . . Inicialmente, o animal está no centro do tabuleiro, representado pela cor vermelha. Os movimentos dos animais são gerados aleatoriamente e consistem em uma direção e um número de passos. A direção é um inteiro no intervalo [1, 4], onde 1 = Cima, 2 = Baixo, 3 = Esquerda, 4 = Direita. Um movimento é representado por uma letra e um número. Por exemplo: B2 significa um movimento de 2 passos para Baixo. O click no botão Reiniciar deve apresentar a interface exatamente como mostra a figura ao lado. A seleção de um botão de rádio deve reiniciar o tabuleiro (colocando o animal no centro) e habilitar os botões Andar e Pular de acordo com o botão selecionado. A classe Animal deve implementar os getters e setters necessários. O construtor da classe deve chamar os setters para atribuir os valores dos parâmetros aos campos da classe, onde: lin - número da linha (um inteiro de 0 a 8) correspondente à posição do animal; col - número da coluna (um inteiro de 0 a 8) correspondente à posição do animal; dir - direção do movimento (um inteiro de 1 a 4); num - número de passos do movimento. O andar de um pato consiste de uma direção gerada aleatoriamente e uniformemente, ou seja, todas as direções tem a mesma chance de ser escolhida. O andar de um gato consiste em uma direção gerada aleatoriamente, em que Cima tem 40% de chance, Baixo tem 20% de chance, Esquerda tem 30% de chance e Direita tem 10% de chance. O número de passos do andar (de pato ou de gato) é sempre igual a 1. O pular de um gato consiste de uma direção gerada aleatoriamente e de um número de passos gerado aleatoriamente no intervalo [2, 4]. O click nos botões Andar e Pular deve chamar, respectivamente, os métodos animalAndar() e animalPular(). O método animalAndar() deve chamar o método andar() da classe correspondente para gerar um movimento, mostrar o movimento gerado no label movimento da GUI e atualizar a posição do animal no tabuleiro. O método animalPular() deve chamar o método pular() da classe Gato para gerar um movimento, mostrar o movimento gerado no label movimento da GUI e atualizar a posição do animal no tabuleiro.
Compartilhar