Prévia do material em texto
INTRODUÇÃO AO JAVA INTRODUÇÃO AO JAVA O QUE É JAVA Linguagem de Programação ● Simples ● Orientada a Objetos ● Distribuída ● Portável ● Robusta ● Segura ● Interpretada ● Independente de arquitetura ● Alta Performance ● Dinâmica INTRODUÇÃO AO JAVA O QUE É JAVA Como Funciona? Todos os programas Java são compilados e interpretados. O compilador transforma o programa em bytecodes independentes de plataforma O interpretador testa e executa os bytecodes. INTRODUÇÃO AO JAVA O QUE É JAVA Como Funciona? Cada interpretador é uma implementação da JVM - Java Virtual Machine (ferramenta, browser, hardware) “Write Once, Run Anywhere” INTRODUÇÃO AO JAVA O QUE É JAVA A PLATAFORMA JAVA Uma plataforma é o ambiente de hardware e software onde um programa é executado. A plataforma Java é um ambiente somente de software Componentes: Java Virtual Machine (Java VM) Java Application Programming Interface (Java API) INTRODUÇÃO AO JAVA O QUE É JAVA O QUE PODEMOS FAZER? ● Applets ● Servlets ● Aplicações ● Aplicações cliente/servidor ● Aplicações para a Internet A LINGUAGEM JAVA INTRODUÇÃO AO JAVA O QUE É JAVA O QUE SÃO CLASSES? Uma classe é uma especificação que define as variáveis e os métodos comuns a todos os objetos de um certo tipo Um objeto é uma instância de uma classe INTRODUÇÃO AO JAVA O QUE É JAVA DECLARAÇÃO DE CLASSE <modificador de acesso> class <nome>{ //declaração de atributos; //declaração de métodos; //construtor } public class ClasseTeste{ //declaração de atributos; //declaração de métodos; //construtor } INTRODUÇÃO AO JAVA O QUE É JAVA COMENTÁRIOS /* texto */ O compilador ignora tudo entre /* e */ /** documentacao */ indica um comentário para documentação. Utilizado pela ferramenta javadoc // texto O compilador ignora todos os caracteres de // até o final da linha INTRODUÇÃO AO JAVA O QUE É JAVA Tipos de dados ● Inteiros: byte / short / int / long ● Reais: float / double ● Outros: char / boolean Nomes de variáveis ● Série de caracteres Unicode ● Não pode ser palavra chave ● Não pode ser nome de outra variável ou classe ● Não pode iniciar com número ● Podem ser iniciadas com $ INTRODUÇÃO AO JAVA O QUE É JAVA Inicialização int i = 10; char c; c = ‘X’; Variáveis finais final float pi = 3.14159; INTRODUÇÃO AO JAVA O QUE É JAVA DECLARAÇÃO DE VARIÁVEIS De instância <modificador de acesso> <tipo> <nome> = <valor>; public int soma = 10; Locais <tipo> <nome> = <valor>; int soma = 11; INTRODUÇÃO AO JAVA O QUE É JAVA DECLARAÇÃO DE MÉTODOS <modificador de acesso> <retorno> <nome>(parametros){ // implementação // return } public void meuMetodo(int P1, int P2){ // implementação // return } INTRODUÇÃO AO JAVA O QUE É JAVA OPERADORES ● Atribuição: = ● Aritméticos: + - * / % ● Unários: ++ -- ● Lógicos: = = != < > <= >= INTRODUÇÃO AO JAVA O QUE É JAVA FLUXO DE CONTROLE Condicionais if-else / switch-case (break) Laço for / while / do-while Exceção try-catch-finally (throw) INTRODUÇÃO AO JAVA O QUE É JAVA VETORES Declaração int[] arrayOfInts; Inicialização arrayOfInts = new int[10]; Declaração e inicialização (elemento de 0 a 9) int[] arrayOfInts = new int[10]; INTRODUÇÃO AO JAVA O QUE É JAVA STRINGS Declarações e atribuições String cde = “cde”; char data[] = { ‘a’, ‘b’, ‘c’ }; String str = new String( data ); String cc = “ab”+cde; As strings podem ser concatenadas através do operador + As strings não podem ser alteradas INTRODUÇÃO AO JAVA O QUE É JAVA STRINGBUFFER Permitem criar strings que podem ser alteradas. Todos os métodos da classe StringBuffer são synchronized Desempenho pior do que com Strings Principais métodos: .append() .insert() .length() .toString() INTRODUÇÃO AO JAVA O QUE É JAVA MÉTODO MAIN Quando o interpretador Java executa uma aplicação, ele começa chamando o método main O método main então chama todos os outros métodos necessários para executar a aplicação public class HelloWorld { public static void main( String[] args ) { System.out.println( “Hello World!” ); } } INTRODUÇÃO AO JAVA O QUE É JAVA CONTROLES DE ACESSO ESPECIFICADOR CLASSE SUBCLASSE PACOTE TODOS private X public X X X X protected X X X package X X INTRODUÇÃO AO JAVA O QUE É JAVA MÉTODOS E VARIÁVEIS ESTÁTICOS ● Declarados com o especificador static ● São comuns a todos os objetos da classe ● Utilizados para declaração de constantes ● Utilizados para declaração de métodos que não necessitam de uma instância da classe INTRODUÇÃO AO JAVA O QUE É JAVA MÉTODOS E VARIÁVEIS ESTÁTICOS static int FALSO 0; static int VERDADEIRO 1; public static boolean testa( int p ) { if( p == this.VERDADEIRO ) return( true ); else return( false ); } INTRODUÇÃO AO JAVA O QUE É JAVA GARBAGE COLLECTOR A plataforma Java periodicamente libera a memória usada por objetos que não são mais necessários O Garbage Collector roda em uma thread de baixa prioridade e remove todos os objetos que não são mais referenciados INTRODUÇÃO AO JAVA O QUE É JAVA FINALIZAÇÃO Antes de um objeto ser destruído, o Garbage Collector executa o método finalize do objeto (quanto existir) Isto permite, por exemplo, o fechamento de arquivos e conexões de rede INTRODUÇÃO AO JAVA O QUE É JAVA THIS A palavra reservada this permite que um objeto consiga uma referência própria. Referência a uma variável do objeto int s; public setStrobeRate( int s ) { this.s = s; } Passagem de referência própria animation = new Thread( this ); INTRODUÇÃO AO JAVA O QUE É JAVA SUPER Referência à superclasse Utilizado para chamar o construtor da superclasse int s; public StrobeLamp( int s ) { super(); this.s = s; } Utilizado para chamar métodos da superclasse public finalize() { f.close(); super().finalize(); } INTRODUÇÃO AO JAVA O QUE É JAVA INTERFACES Interface é uma especificação que permite que objetos não relacionados possam interagir (análogo a protocolo) As interfaces definem conjuntos de métodos, mas não os implementam Uma classe que implemente a interface deve implementar TODOS os métodos definidos nesta. public interface Sleeper { public void wakeUp(); public long ONE_SECOND = 1000; // milli } INTRODUÇÃO AO JAVA O QUE É JAVA PACOTES Para facilitar o uso, controle de acesso e controle de conflito de nomes, os programadores agrupam classes e interfaces relacionadas em pacotes. Os pacotes necessários a um programa devem ser incorporados através do comando import. Basta incluir no início arquivo da classe a linha: package nomePacote; Por convenção, deve-se usar o nome do pacote no formato: com.company.package INTRODUÇÃO AO JAVA O QUE É JAVA EXCEÇÕES A linguagem Java utiliza as exceções para fornecer capacidades de controle de erros quando, durante a execução de um programa, ocorrer um evento que interrompa o fluxo normal de instruções Vantagens: ● Separar o gerenciamento de erro do resto do código. ● Propagar erros. ● Agrupar os erros. INTRODUÇÃO AO JAVA O QUE É JAVA EXCEÇÕES try { // abre o arquivo // determina o seu tamanho // aloca a memória necessária // lê o arquivo para a memória // fecha o arquivo } catch (fileOpenFailed) { fazAlgo; } catch (sizeDeterminationFailed) { fazAlgo; } catch (memoryAllocationFailed) { fazAlgo; } catch (readFailed) { fazAlgo; } catch (fileCloseFailed) { fazAlgo; } INTRODUÇÃO AO JAVA O QUE É JAVA THREADS Uma thread - também chamada de linha de execução - é um fluxo sequencial simples de controle dentro de um programa. Quando uma thread é criada, ela executa o método run do objeto. INTRODUÇÃO AO JAVA O QUE É JAVA THREADS Uma thread - também chamada de linha de execução - éum fluxo sequencial simples de controle dentro de um programa. Quando uma thread é criada, ela executa o método run do objeto. PROGRAMAÇÃO ORIENTADA À OBJETOS INTRODUÇÃO AO JAVA ORIENTAÇÃO À OBJETOS CONCEITOS BÁSICOS ● Objetos ● Mensagens ● Classes ● Herança INTRODUÇÃO AO JAVA ORIENTAÇÃO À OBJETOS O QUE SÃO OBJETOS? Conjunto de variáveis e procedimentos utilizados para modelar objetos do mundo real (e imaginário) Um objeto é caracterizado pelo seu estado e pelo seu comportamento Exemplo - Lâmpada Estados - ligada/desligada Comportamento - mudar de ligada para desligada mudar de desligada para ligada INTRODUÇÃO AO JAVA ORIENTAÇÃO À OBJETOS O QUE SÃO MENSAGENS? Mensagens são utilizadas para fazer a comunicação entre os objetos Cada objeto entende um conjunto de mensagens que podem mudar seu estado atual Quando há a necessidade de maiores informações, as mensagens podem conter parâmetros INTRODUÇÃO AO JAVA ORIENTAÇÃO À OBJETOS O QUE É HERANÇA? A herança fornece um mecanismo poderoso e natural para organização e estruturação de objetos Uma classe herda estados e comportamentos de sua superclasse INTRODUÇÃO AO JAVA ORIENTAÇÃO À OBJETOS Exemplo - Lâmpada public class Lamp { private boolean LampIsOn; public void turnKnob() { LampIsOn = !LampIsOn; } public Lamp() { LampIsOn = false; } } Slide 1 Slide 2