AULA 14-15 INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETOS Curso: Informática (Subseqüente) Disciplina: Programação Orientada a Objetos Prof. Abrahão Lopes [email protected] BlueJ Ambiente de programação gratuito, voltado para o ensino de Programação Orientada a Objeto. Desenvolvido por professores das Universidades de Deakin, Austrália e Kent, Reino Unido. Possui interface simples, de fácil aprendizado. Apresenta uma visualização em UML das classes. BlueJ BlueJ Conceitos Fundamentais O que é Programação Orientada a Objetos? “É um paradigma de programação de computadores onde se usam classes e objetos, criados a partir dos modelos descritos anteriormente, para representar e processar dados usando programas de computadores”. (SANTOS, 2003) Conceitos Fundamentais O que é um Objeto? “É a representação de uma coisa do mundo real.” (BARNES, 2009) Exemplos: O carro vermelho que está ali no estacionamento. Este lápis na minha mão. A peruca do Silvio Santos. Conceitos Fundamentais O que é uma Classe? “É um projeto de um objeto. Ela informa como criar um objeto de um tipo específico.” (SIERRA & BATES, 2007) Conceitos Fundamentais Como representamos uma Classe? Usamos a UML (Unified Modeling Language) para representar as classes, utilizando um retângulo com três divisões: Nome da Classe, Variáveis de Instância e Métodos (ações). NomeDaClasse Carro Variáveis de Instância - modelo (String) - cor (String) - velocidade (int) Métodos (ações) + buzinar( ) + acelerar( ) + reduzir( ) Conceitos Fundamentais Como é o código Java de uma classe? Conceitos Fundamentais O que são Instâncias? Chamamos de instância, cada objeto criado a partir de uma classe. Carro - modelo (String) - cor (String) - velocidade (int) + buzinar( ) + acelerar( ) + reduzir( ) Aprendendo na Prática 1. Inicialize o BlueJ; 2. Clique em [New Class]; 3. Digite OlaMundo no nome da classe e clique [Ok]. Aprendendo na Prática 4. Clique duas vezes na representação da classe OlaMundo para abrir o editor de código; 5. Apague o código existente e digite o código do próximo slide. Aprendendo na Prática OlaMundo + falar ( ) Aprendendo na Prática 5. Clique no menu Class > Save; 6. Clique em [Compile]; Se tudo foi feito corretamente, a mensagem Class compiled será exibida no rodapé. 7. Feche a janela atual; Aprendendo na Prática Classes não compiladas aparecem com linhas diagonais. Classes compiladas aparecem em cor sólida. Aprendendo na Prática Criando o primeiro objeto: Clique com o botão direito do mouse sobre o ícone da classe e escolha a opção: new OlaMundo() Escolha um nome para o objeto e clique [Ok] Aprendendo na Prática Aí está o seu primeiro objeto! Aprendendo na Prática Executando os métodos: Clique sobre o objeto com o botão direito e escolha o método falar ( ) Escolha Remove ao concluir o teste para destruir o objeto. Aprendendo na Prática Exemplo 2: Vamos implementar a Classe Carro. Carro - modelo (String) - cor (String) - velocidade (int) + buzinar( ) + acelerar( ) + reduzir( ) Aprendendo na Prática Criando várias instâncias e comparando valores. Clique com o botão direito do mouse na classe Carro e escolha o comando new Carro( ) Repita a operação. Aprendendo na Prática Clique com o botão direito sobre o objeto carro1 e escolha algumas vezes o método acelerar ( ). Depois escolha buzinar ( ) para saber a qual velocidade ele está. Faça o mesmo com o objeto carro2. Observe que cada carro poderá ter uma velocidade diferente. São independentes! Aprendendo na Prática Vamos agora adicionar mais dois métodos que nos permitirão dar nome aos bois, digo, aos carros. Carro - modelo (String) - cor (String) - velocidade (int) + buzinar( ) + acelerar( ) + reduzir( ) + setModelo ( String m ) + setCor ( String c) Ponha este código antes da última chave “ } ” Aprendendo na Prática As variáveis m e c são temporárias e passam os valores para as variáveis modelo e cor, respectivamente. Aproveite e altere o método buzinar ( ) deixando-o como abaixo: Aprendendo na Prática Crie um novo objeto Carro e escolha um dos métodos recém criados. Será exibida uma tela em que você poderá passar um valor para o objeto. Lembre-se que Strings devem vir entre aspas! Aprendendo na Prática Após colocar o modelo e a cor, acelere e peça para buzinar. Agora o carro está bem identificado. Se quiser conferir o valor de todas as variáveis, escolha a opção Inspect. Exercício Desenhe o diagrama e implemente: 1. Uma classe que permite cadastrar pessoas com nome, email e telefone. Um método deve exibir o cartão de visita desta pessoa. 2. Uma classe que simula uma calculadora de 4 operações, calculando dois números fornecidos pelo usuário e exibindo o resultado quando solicitado. Referências BARNES. KOLLING. Programação orientada a objetos com Java. Uma introdução prática usando o BlueJ. 4ed. Pearson, 2009. SANTOS, Rafael. Introdução à programação orientada a objetos usando Java. Campus, 2003. SIERRA, Kathy. BATES, Bert. Use a Cabeça! Java. 2ed. Alta Books, 2007.