Java 02 Iniciando Uso Java

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    Java 02 Iniciando Uso Java - Presentation Transcript

    1. Iniciando o uso do Java
        • Regis Pires Magalhães
        • [email_address]
    2. Roteiro
      • Java Virtual Machine (JVM)
      • Carregador de classes (ClassLoader) e CLASSPATH
      • Verificador de bytecodes
      • Instalação do Kit de Desenvolvimento Java (J2SDK)
      • Estrutura do programa Java
        • Classe
        • Atributos
        • Métodos
        • Método main()
      • Compilando o programa
      • Executando o programa
      • Coleta de lixo
    3. Java Virtual Machine (JVM)
      • Java Virtual Machine (JVM)
        • É um computador de mentira.
        • É o interpretador de código binário java.
        • Utilizada para executar o programa já compilado.
        • Mapeia as instruções do bytecode para código específico da plataforma em que ele está sendo executado.
      • Compilação => Interpretação
      Fonte: Tutorial da Sun
    4. Java Virtual Machine (JVM)
        • Há implementações da JVM para as mais diversas plataformas
          • Provê independência de plataforma
      Fonte: Tutorial da Sun
    5. Funcionamento sem Máquina Virtual
    6. Funcionamento com Máquina Virtual
      • A aplicação roda sem envolvimento com o Sistema Operacional.
        • Conversa apenas com a Máquina Virtual.
    7. Java Virtual Machine (JVM)
      • Bytecodes
        • Código binário gerado pelo compilador Java.
        • A origem do nome decorre do fato de que cada código de operação da máquina virtual gasta apenas um byte.
          • Há menos de 256 operações possíveis.
        • São códigos binários independentes de plataforma e executados pela Máquina Virtual Java (JVM).
        • Texto contendo código escrito em linguagem Java é traduzido em bytecode através do processo de compilação e armazenado em um arquivo .class chamado de classe Java .
        • Cada arquivo .class é nomeado de acordo com o nome correspondente no arquivo .java .
    8. Java Virtual Machine (JVM) Fonte: argonavis.com.br
    9. Java Virtual Machine (JVM)
        • A forma de execução de uma aplicação depende:
          • da origem do código a ser executado (remoto ou local)
          • da forma como foi implementada a JVM pelo fabricante
      Fonte: argonavis.com.br
    10. Carregador de classes (ClassLoader) e CLASSPATH
      • ClassLoader
        • Realiza o carregamento das classes necessárias para rodar a aplicação.
      • CLASSPATH
        • Variável de ambiente que contém os caminhos onde o ClassLoader pode localizar classes.
        • Pode ser definido através de parâmetros do comando java .
      • Verificação de Bytecodes
        • Antecede a execução do código em classes carregadas através da rede.
          • Usado para verificação de applets e de aplicativos que baixam bytecodes de uma rede.
          • Testa o formato dos fragmentos de código e verifica a existência de algum código ilegal.
    11. Hotspot e JIT
      • Hotspot
        • Tecnologia para detecção de “pontos quentes” da aplicação, ou seja, código que é bastante executado.
      • JIT – Just In Time Compiler
        • Compilador que é usado “bem na hora” que precisamos, ou seja, quando um “ponto quente” é detectado.
      • Pode-se durante a execução, mudar a estratégia de compilação para melhorar a performance.
        • É possível que, em aplicações que rodem por um certo tempo, tenhamos compilações Java com performance melhor que compilações em C.
    12. Estrutura do programa Java
      • Pode conter os seguintes elementos:
          • Especificação de pacote (package);
          • Especificação de importação (import);
          • Declaração de classe (class);
          • Declaração de interface (interface).
    13. Estrutura do programa Java
      • Classe
        • Classe é uma coleção de dados e métodos que operam sobre esses dados
        • Palavra reservada class seguida do nome da classe
        • O arquivo .java deve ter nome idêntico ao de uma classe contida nele
        • Classes não são os objetos que representam
          • A planta de uma casa não é uma casa
      Atributos Métodos Classe // Loja.java class Loja { // Atributos ... // Métodos ... }
    14. Estrutura do programa Java
      • Classe
    15. Estrutura do programa Java
      • Membros
        • Membros são os dados e métodos de uma classe
        • Membros de dados também são chamados atributos
        • Atributos normalmente são declarados antes de métodos
      • Atributos
        • Exceto dentro do corpo de métodos, os atributos podem ser declarados em qualquer lugar do corpo da classe
        • Tipo do atributo seguido do nome do atributo e “;”
          • Exemplos: int x; float f; char c;
    16. Estrutura do programa Java
      • Atributos
      Loja id : int sigla : String descricao : String stringLoja() : String
    17. Estrutura do programa Java
      • Métodos
        • Corpo de Método
          • Variáveis internas ao método (locais)
          • Estruturas de controle
            • Desvio
              • if-else / switch
            • Loops
              • while / for
            • Tratamento de exceções
              • try-catch-finally
          • Retorno do método
            • Palavra-chave return seguida do tipo de retorno.
            • Se o método retorna void => Simplesmente return; ou nada.
    18. Estrutura do programa Java
      • Métodos
    19. Estrutura do programa Java
      • Métodos
        • Tipo de retorno do método seguido do nome do método e, então, de sua lista de parâmetros
      Loja id : int sigla : String descricao : String stringLoja() : String
    20. Estrutura do programa Java
      • Método main( )
        • Permite execução direta através da linha de comando.
        • Deve obrigatoriamente ter a assinatura:
          • public static void main(String[] args)
        • O parâmetro args contém a lista de parâmetros passados através da linha de comando.
    21. Estrutura do programa Java
      • Método main( )
        • O retorno do método main é do “tipo” void .
        • O argumento é um Array formado por Strings passadas na linha de comando:
      Fonte: argonavis.com.br
    22. Estrutura do programa Java
      • Método main( )
        • Exemplo:
    23. Compilando o programa
        • Use o java c ompiler ( javac )
          • javac NomedaClasse.java
    24. Executando um programa
        • Use o interpretador java (faz parte do JRE)
          • java NomedaClasse
    25. Coleta de Lixo
        • Conhecida como garbage collection .
        • Ao contrário de C++ , em Java o programador não precisa destruir de forma explícita os objetos que não serão mais necessários.
          • Gerenciamento de memória explícito é tedioso e muito suscetível a erros.
          • Permite que o programador se concentre nos algoritmos que desenvolve.
        • Garbage collection é responsável pela destruição de todos os objetos que não estão sendo utilizados.
        • Um objeto está pronto para a coleta de lixo quando não existir mais nenhuma referência para ele.
        • A capacidade de desalocar memória automaticamente exige uma complexidade muito superior à de gerenciadores manuais.
    26. Coleta de Lixo
        • O interpretador verifica periodicamente quais objetos alocados não estão mais sendo referenciados e os destrói
        • O Coletor de Lixo de Java
          • É capaz de detectar e destruir ciclos de objetos que se referenciam mutuamente, mas que não são referenciados por nenhum outro objeto;
          • É executado como uma thread de baixa prioridade.
            • Geralmente realiza sua tarefa quando o sistema está ocioso;
            • Exceto quando o interpretador fica sem memória.
        • A coleta de lixo juntamente com a ausência de manipulação de ponteiros são fatores de segurança, pois evitam que crashes e leaks ocorram pelo uso indevido da memória, tornando a aplicação mais robusta. A coleta ainda é fator de produtividade, eliminando o esforço de liberação manual de memória.
    27. Coleta de Lixo Fonte: argonavis.com.br
    28. Coleta de Lixo
    29. Coleta de Lixo Fonte: http://java.sun.com/developer/technicalArticles/ALT/RefObj/ Java Heap
    30. Por que Java?
      • Aplicações de médio e grande porte.
      • Uso em ambientes heterogêneos multi-plataforma.
      • Enorme quantidade de bibliotecas gratuitas para os mais diversos trabalhos:
        • Relatórios;
        • Gráficos;
        • Sistemas de busca;
        • Geração de código de barras;
        • Manipulação de XML;
        • Tocadores de áudio/vídeo;
        • Impressão;
        • Etc.
    31. Resumo
      • Fases de um programa Java:
        • Edição
        • Compilação ( javac )
        • Execução ( java )
          • Carregamento de classes
          • Verificação de bytecodes (classes remotas)
          • Interpretação ou Tradução JIT
      Fonte: argonavis.com.br
    32. Resumo
      • Estrutura de um programa Java:
        • Classe
        • Atributos
        • Métodos
      • A coleta de lixo em Java é automática
      Class Loja { // Atributos int id; String sigla, descricao; // Métodos String stringLoja() { ... } } Loja id : int sigla : String descricao : String stringLoja() : String
    33. Referências e Recursos
        • argonavis.com.br
          • http://www.argonavis.com.br
        • Thinking in Java (3rd Edition)
          • http://www.bruceeckel.com
        • Core Java 2 – Volume I – Cay S. Horstmann e Gary Cornell.
        • Computer Organization
          • http://www.dickinson.edu/~braught/courses/cs251f00/classes/notes04.html
        • The Java Virtual Machine
          • http://occs.cs.oberlin.edu/faculty/jdonalds/210/lecture25.html
        • The lean, mean, virtual machine
          • http://www.javaworld.com/javaworld/jw-06-1996/jw-06-vm_p.html

    + regispiresregispires, 11 months ago

    custom

    921 views, 1 favs, 0 embeds more stats

    More info about this document

    © All Rights Reserved

    Go to text version

    • Total Views 921
      • 921 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 59
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Tags