08/09/2013 Programação Orientada a Objetos Aula 6 TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com GUI em Java: pacote Swing O exemplo abaixo emprega o pacote Swing (javax.swing), que emprega componentes gráficos Java. //AloMundo com interface grafica import javax.swing.JOptionPane; public class AloMundo2 { public static void main(String args[]) { JOptionPane.showMessageDialog( null,"Alô, Mundo!"); System.exit(0); } } TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com 1 08/09/2013 GUI em Java: pacote Swing Java possui uma extensa biblioteca de classes pré-definidas disponíveis para o programador. Estas classes são agrupadas em categorias de classes relacionadas, chamadas de pacotes. O conjunto de pacotes Java é denominado biblioteca de classes Java. O pacote javax.swing ajuda o programador a definir interfaces gráficas com o usuário import javax.swing.JOptionPane; TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com GUI em Java: pacote Swing O comando import indica a localização da classe JoptionPane, presente no pacote de classes javax.swing TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com 2 08/09/2013 GUI em Java: pacote Swing JOptionPane.showMessageDialog(null,"Alô, Mundo!"); O método showMessageDialog requer dois argumentos, separados por vírgulas. Estamos utilizando o parâmetro null como valor de nosso primeiro argumento, pois, por enquanto, não há dependência de outras janelas em nosso programa. TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com GUI em Java: pacote Swing JOptionPane.showMessageDialog(null,"Alô, Mundo!"); O segundo argumento é a mensagem que desejamos emitir. Deve ser do tipo String. System.exit(0); O método exit() da classe System termina o programa. É obrigatório em todo programa que usa interface gráfica. O argumento 0 indica que o aplicativo terminou com sucesso. TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com 3 08/09/2013 GUI em Java: pacote Swing A classe System é parte do pacote java.lang, que é importado automatica-mente em todo programa Java. O método exit()termina a JVM após o encerramento da aplicação gráfica. TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com Entrada de dados com Scanner O exemplo a seguir apresenta uma aplicação Java para a entrada de dois números pelo teclado e a saída da soma na janela de comando do sistema operacional. É necessário criar uma instância da classe Scanner, passando como argumento o objeto padrão de entrada, System.in, que irá capturar as entradas de dados via o teclado. O método nextInt(), da instância da classe Scanner, lê o valor digitado e o armazena em uma variável do tipo int. TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com 4 08/09/2013 Entrada de dados com Scanner import java.util.Scanner; public class Teste { public static void main(String[] args) { Scanner entrada = new Scanner(System.in); int num1; int num2; int soma; System.out.print("Entre com o primeiro número: "); num1 = entrada.nextInt(); System.out.print("Entre com o segundo número: "); num2 = entrada.nextInt(); soma = num1 + num2; System.out.printf("A soma é: %d", soma); } } TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com Entrada de dados com Scanner Um exemplo de saída do aplicativo acima: Entre com o primeiro número: 34 Entre com o segundo número: 23 A soma é: 57 TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com 5 08/09/2013 Atividade Continuada Entregar até a próxima aula 01. Receba dois números reais do usuário em seguida exiba o resultado das seguintes operações matemáticas: (s) soma, (sub) subtração, (m) multiplicação, (d) divisão (mod) resto da divisão. 02. Solicite ao usuário inserir 2 horários no seguinte formato (HH:MM:SS) e exiba a diferença entre eles em segundos. OBS: O usuário deverá digitar primeiro a hora (HH), depois os minutos (MM) e por fim os segundo (SS). TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com Referências Bibliográficas BARNES, David. Programação Orientada a Objetos com Java. 4ª Edição. São Paulo: Prentice Hall, 2009. DEITEL, Harvey. M.; DEITEL, Paul J. Java: Como programar. 8ª Edição. São Paulo: Prentice Hall, 2010. MOTTA, Gustavo. Introdução à Programação. Material de aula da UFPB - Departamento de Informática. TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS – 2013 Marcelo Henrique dos Santos - http://www.marcelohsantos.com 6