Podem me ajudar com este exercício de Java com exceções??
Utilize tratamento de exceções para capturar problemas de entrada (argumentos fora da précondição
e erros de conversão [argumento(s) inválido(s)).
a) Crie a interface JogoInterface.
public interface JogoInterface {
public void resetar ();
public Placar jogar ();
public void abortar ();
}
b) Crie uma classe chamada Placar. Esta classe será usada representar o final do jogo, o resultado
ou alguma outra informação que você precise passar para a estrutura de gerenciamento de jogos.
o construtor deve receber um objeto String, a ser atribuído para a uma variável ou campo de
instância
um campo com que terá atribuído uma constante que indica se o jogo foi ganho ou não, com
métodos set e get
outros campos e métodos que você achar necessários
c) Crie uma classe chamada MenorMaior, que implemente JogoInterface, que sorteie um número
aleatório >= 1 e <= 100. O usuário deve tentar adivinhar qual foi o número sorteado.
O construtor deve sortear o número aleatório e guardar numa variável de instância.
O método resetar() pode gerar novo número aleatório
Pense no método abortar()
O método jogar() deve entrar na rotina do jogo propriamente:
Pergunta um número para o usuário, espera a sua entrada. A entrada deve ser criticada.
Ao receber o número o programa informa o número entrado tela e em seguida:
se o usuário não acertou o número, informa se o mesmo é MAIOR ou MENOR que o número
sorteado e pede uma nova entrada/tentativa de número;
se o usuário acertar o número sorteado, o método termina e um objeto Placar deve ser criado
com a informação do resultado preenchida nos seus campos. Por exemplo, uma mensagem
dizendo que o usuário venceu, o numero sorteado e o número de tentativas.
o usuário pode desistir do jogo digitando o valor 0 (zero), então o mesmo procedimento do fim
de jogo deve ser usado, criando-se um objeto Placar , com uma mensagem dizendo que o
usuário perdeu, o número sorteado, e o numero de tentativas, etc. e esse objeto é o retorno do
método jogar().
Reforçando, o método jogar() retorna um objeto da classe Placar, com o resultado do jogo.
Exemplo:
O jogo Maior Menos comecou...
Digite um número: 50
O numero fornecido eh MAIOR que o sorteado.
Digite um número: 35
O numero fornecido eh MAIOR que o sorteado.
Digite um número: 25
O numero fornecido eh MAIOR que o sorteado.
Digite um número: 15
O numero fornecido eh MAIOR que o sorteado.
Digite um número: 5
O numero fornecido eh MENOR que o sorteado.
Digite um número: 9
O numero fornecido eh MENOR que o sorteado.
Digite um número: 12
O numero fornecido eh MAIOR que o sorteado.
Digite um número: 11
d) Crie uma classe chamada CaraCoroa que implemente a interface JogoInterface.
O jogo você conhece. Use os requisitos da classe MaiorMenor como base e desenvolva classe.
Adapte o que for necessário. Mas, o uso da JogoInterface amarra propositalmente algumas coisas.
Isso serve para fazer com que todas as classes de “jogos” possam ser usados da mesma forma por
uma classe “gerenciadora de jogos”.
e) Crie uma classe Jogo, classe principal do programa. A idéia é que o usuário vai executar esta
classe e vai poder escolher o jogo, jogar ou abortar, jogar novamente o mesmo jogo, jogar outro
jogo e terminar o programa.
Também, queremos mostrar que o uso de modularidade, interface e herança pode tormar a
produção do programa mais ágil. Imagine por exemplo a criação de uma fábrica de jogos.
O método main deve:
- criar uma instância de objeto da classe Jogo (sim!, não vamos mais usar a execução de tudo no
m;etodo main, estático – vamos criar um objeto mesmo)
- chamar o método iniciar ()
- chamar o método finalizar()
O método iniciar() deve:
- perguntar ao usuário qual jogo ele deseja jogar.
- criar o objeto da classe do jogo correspondente
- chamar o método jogar(), passando o objeto do jogo
- fazer os laços necessários para o usuário jogar novamente
- aqui, se você for “esperto” vai preparar a estrutura de “menus” para que novos jogos sejam
incluídos.
O método jogar() do objeto da classe Jogo deve:
- receber como parâmetro o objeto do jogo (ou seja, (JogoInterface j))
- chamar o método jogar() do objeto do jogo passado como parâmetro.
- com o retorno do método anterior, deve chamar o método exibirPlacar(), que exibe o resultado do
jogo
O método exibirPlacar(Placar p) recebe o objeto Placar e exibe o resultado dessa “rodada”
O método finalizar() fecha a aplicação. Neste método, seria possível fazer uma contabilidade de
quanto tempo o usuário usou o jogo, poderia totalizar alguns resultados e até pedir uma
contribuição se ele gostou de usar a aplicação.
Soluções para a tarefa
Respondido por
1
Você passou mais de 1 pergunta, é melhor você estudar isso ai e tentar fazer por conta propria
Perguntas interessantes
Sociologia,
10 meses atrás
História,
10 meses atrás
Geografia,
10 meses atrás
Administração,
1 ano atrás
História,
1 ano atrás
Ed. Física,
1 ano atrás