Exercício de JAVA, interface... Alguém pode me ajudar?
7 respostas
javaprogramação
F
Felipeinacio
Estou com esse exercício para resolver, da faculdade, mas não estou conseguindo entender muito bem. Estou lendo, pesquisando, mas não consegui até agora. Alguém pode me ajudar?
O exercício é seguinte:
Você trabalha na área de tecnologia da informação (TI) em uma escola. A secretária da instituição solicitou a você a criação de um recurso no sistema que permita inserir a nota obtida pelo aluno em determinada disciplina. A nota deve ser definida em um campo específico em formato decimal, porém retornando ao cliente, após inserção do valor, o resultado obtido.
Você deverá criar uma interface com três constantes:
“Parabéns, você atingiu todos os indicadores de avaliação com excelência”;
“Parabéns, você obteve aproveitamento satisfatório nos indicadores de avaliação”;
“Você não atingiu o mínimo esperado para aprovação”.
Para atender ao pedido, você deverá:
utilizar Java na construção do código;
criar uma classe para implementar a interface;
criar uma variável na classe para receber a opção digitada pelo usuário;
utilizar o método showInputDialog() da classe JOptionPane para solicitar as opções;
criar uma estrutura de decisão para verificar a opção digitada e printar na tela o conceito e sua descrição;
criar um projeto denominado ConceitoAluno; dentro dele, criar um pacote chamado interfaces, e, dentro do pacote, a interface e a classe para implementá-la.
O enunciado está bastante objetivo, o que exatamente você não entendeu?
Quando vejo um enunciado desses, fico desapontado que ainda existem professores insistindo em ensinar coisas erradas.
Usar interfaces para definir constantes é um Anti-Pattern.
Constantes você define em classes ou utiliza enum.
F
Felipeinacio
Então, eu não consegui encontrar a forma certa de adicionar o JOpition, fiz de diversas maneiras, e todas me trouxeram resultados com erro, ou que simplesmente não funcionavam.
Creio q seja pelo fato de n conseguir usar o switch case da forma devida em meio a esse exercício em específico.
É que agora não estou com meu notebook, mas jaja mando mais ou menos oq eu consegui fazer.
S
staroski
Consultou a documentação do JOptionPane?
Posta o seu código.
F
Felipeinacio
publicinterfaceConstantes{publicStringE="Parabéns, você atingiu todos os indicadores de avaliação com excelência";publicStringS="Parabéns, você obteve aproveitamento satisfatório nos indicadores de avaliação";publicStringM="Você não atingiu o mínimo esperado para aprovação";}
importjavax.swing.JOptionPane;publicclassGeralimplementsConstantes{publicstaticvoidmain(String[]args){Geralgeral=newGeral();geral.executar();}publicvoidexecutar(){Stringopcao=solicitarOpcaoDoUsuario();Stringconceito=avaliarConceito(opcao);apresentar(opcao,conceito);}privateStringavaliarConceito(Stringopcao){returnnull;}privateStringsolicitarOpcaoDoUsuario(){Objectmensagem="Selecione a nota do aluno";Stringtitulo="Entrada de dados";double[]valoresSelecionaveis=newdouble[]{1,2,3,4,5,6,7,8,9,10};ObjectvalorInicialSelecionado=0;finalStringopcao=JOptionPane.showMessageDialog(mensagem,titulo,valoresSelecionaveis,valorInicialSelecionado);returnopcao;}privateStringavaliarConceito(intopcao){switch(opcao){case10:returnE;case9:returnE;case8:returnE;case7:returnS;case6:returnS;case5:returnM;case4:returnM;case3:returnM;case2:returnM;case1:returnM;case0:default:returnM;}}privatevoidapresentar(Stringopcao,Stringconceito){Objectmensagem="A nota do aluno é: "+opcao+"\n"+conceito;Stringtitulo="Resultado";inttipoMensagem=JOptionPane.INFORMATION_MESSAGE;JOptionPane.showMessageDialog(null,mensagem,titulo,tipoMensagem);}}
Por enquanto foi isso que eu consegui fazer, mas o erro “The method avaliarConceito(int) from the type Geral is never used locallyJava(603979894)” e o “JOptionPane is not applicable for the arguments (Object, String, double[], Object)” estão persistindo.
L
Leticia_Navarro
Sou graduanda em design e por alguma razão a faculdade quer que eu entenda linguagem de programação quando eu deveria criar interface. Estou com uma questão EXATAMENTE IGUAL e não faço ideia do que seja, alguém me ajuda pfvr :')
R
rodriguesabner
Cria um tópico aqui no fórum com a sua dúvida, só pra não misturar as coisas.
Se puder colocar no tópico o que você já aprendeu na sua matéria, vai ser uma bom ponto de partida pra qm começar a te ajudar
P
pocae1don
final String opcao = JOptionPane.showMessageDialog(mensagem, titulo, valoresSelecionaveis, valorInicialSelecionado);
Quando vc invoca o método showMessageDialog da classe JOptionPane, n tem retorno, o método é void, pois será apenas um aviso para o usuário, e não uma decisão, onde deveria escolher um Sim/Não, que nesse caso, teria que ser showConfirmDialog, e o retorno será um int e não String.
O primeiro argumento, é a referencia ao componente Pai, ou seja, o JFrame, mas vc pode passar como null também, a diferença é que se passar o JFrame, a mensagem será exibida centralizada nele, e já null, ao centro da tela, sem nenhuma referencia.