Laboratório I Aula 2 Prof. Msc. Anderson da Cruz
Fases da Programação
Implementação de Linguagens de Programação Compilação geração de código executável dependente da plataforma de execução tradução lenta X execução rápida Interpretação pura sem geração de código execução lenta, independente de plataforma Híbrida geração de código intermediário independente de plataforma de execução tradução rápida X execução não muito rápida
Processo de Compilação de um Programa em Java
Processo de Compilação de um Programa em Java Bytecodes É o formato compilado dos programas java; Código intermediário (ajuda na portabilidade); As máquinas virtuais interpretam os bytecodes, ou seja, é necessária a instalação da máquina virtual;
Processo de Compilação de um Programa em Java Máquina Virtual Java (JVM) Camada intermediária entre a aplicação e o sistema operacional Existem versões para vários sistemas operacionais/ plataformas
Processo de Execução de um Programa em Java
Processo de Execução de um Programa em Java Etapa que antecede a execução do código em classes carregadas através da rede Class Loader distingue classes locais (seguras) de classes remotas (potencialmente inseguras) Verificação garante: Aderência à especificação da JVM Não-violação de políticas de acesso estabelecidas pela aplicação Não-violação da integridade do sistema Ausência de estouros de pilha Tipos de parâmetros corretamente especificados Ausência de conversões ilegais de tipos
Processo de Execução de um Programa em Java
Primeiro Programa em Java Abra o prompt de comando e verifique se o java está instalado através da seguinte instrução: Javac version Abra o notepad e coloque os seguintes códigos: public class Lab1Aula1 { public static void main(string[] Args) { } System.out.println( Bem-vindo ao JAVA! ); } Salve o trecho acima colocando o nome do arquivo Lab1Aula1.java (o nome do arquivo precisa estar obrigatoriamente com o mesmo nome da classe principal/public). Salve em c:\
Primeiro Programa em Java Abra o prompt de comando e vá até o local que encontra-se o arquivo Lab1Aula1.java c:\javac Lab1Aula1.java Lab1Aula1.java c:\java Lab1Aula1 Lab1Aula1.class Tela do computador -> Bem-vindo ao JAVA!
Instalação e Configuração JAVA Informações para instalação do JDk http://docs.oracle.com/javase/7/docs/ webnotes/install/index.html
BlueJ BlueJ é um ambiente para programação em Java (acadêmico) mais amigável, que inclui um editor, visualizador de classes e depurador integrados Foi desenvolvido pelas Universidade de Kent (Inglaterra) e Deakin (Austrália) O projeto é suportado pela SUN Microsystems É um aplicativo gratuito e está disponível para download em: http:// www.bluej.org/download/download.html O manual/tutorial está disponível em: http://www.bluej.org/tutorial/ tutorial-portuguese.pdf É necessário a instalação do JDK (Java Development Kit) antes da instalação do BlueJ
Atividade Criar o diagrama de classe para a classe Pessoa. Precisaremos definir: Atributos Métodos Tipo de dados Visibilidade O professor está preocupado com o seu peso, então, um dos métodos obrigatórios nesta classe é o IMC (Índice de Massa Corporal). Cálculo é: Peso / Altura 2 Vamos IMPLEMENTÁ-LA com o BlueJ, passo-a-passo
UML UML (Unified Modeling Language) É uma linguagem para modelar (graficamente) uma classe -nome: String - altura: double - peso: double -genero: String -idade: int Pessoa + getnome(): String + setnome(novonome: String): void + getaltura(): double + setaltura(novaaltura: double): void + getpeso(): double + setpeso(novopeso:double): void + getgenero(): String + setgenero(novogenero: String): void - calculaimc(): double + getimc(): double
Atividade Abra o BlueJ Crie um novo projeto com o nome Lab1Aula2 Crie uma nova classe chamada Pessoa Clique sobre a classe Pessoa e deixe apenas o seguinte código: public class Pessoa { } Verifique o local onde encontra-se o projeto Lab1Aula2 Analise os arquivos gerados Vamos incluir os atributos com a sua visibilidade e tipo de dado (atributos do diagrama de classes)
Atividade Vamos incluir os atributos com a sua visibilidade e tipo de dado (atributos do diagrama de classes) Vamos gerar os métodos getters e setters Vamos analisar os objetos dessa classe via BlueJ, ou seja, instanciar alguns objetos e analisar seus atributos Após a criação dos objetos, utilize a opção Inspect para analisar os dados do objeto
Atividade Vamos criar um construtor que permita entrar com o nome, altura, peso, gênero e idade Vamos criar um construtor sem parâmetro Vamos criar o método calculaimc() Vamos criar o método getimc() Vamos criar o método exibedados() Vamos criar o método diaaniversario()
Atividade Qual é a diferença entre classe e objeto? Quantos objetos podemos criar (instanciar) a partir da classe Pessoa? Todos os objetos da classe Pessoa têm as mesmas características (atributos). Quais são? O que são os métodos getters e setters?