08/06/2009

Introdução à Linguagem
JAVA
Pro. Esp. Andre Negreiros
2009

2 Introdução à linguagem JAVA
Aula 01 - Introdução

Introdução à Linguagem JAVA - Prof. André Negreiros FATENE - 2009

1

André Negreiros FATENE .  Discutir como a linguagem Java implementa as principais idéias da programação OO.Prof.  Introduzir os conceitos de orientação a objetos. Introdução à Linguagem JAVA .Prof. André Negreiros FATENE .2009 2 . 08/06/2009 Objetivos 3  Discutir aspectos de qualidade de software. This e Acessibilidade  Varáveis finais e membros de classe Introdução à Linguagem JAVA .2009 Conteúdo Programático 4  Introdução à Linguagem Java  Sintaxe e Fundamentos  Estruturas de controle  Arrays  Introdução a OO  Garbage Collected.  Fornecer subsídios para a programação OO.  Indicar como programas em Java podem ser adequadamente escritos e estruturados.

Prof.2009 Assuntos não abordados 6  UML  Coleções  EJB  Padrões de projeto  Interface gráfica (Swing e AWT) Introdução à Linguagem JAVA . 08/06/2009 Conteúdo Programático 5  Pacotes  Herança e Classes  Polimorfismo  Classes abstratas e interfaces  Exceções  Agregação. André Negreiros FATENE .Prof. André Negreiros FATENE .2009 3 . listas e coleções  Threads Introdução à Linguagem JAVA .

Prof. André Negreiros FATENE ..2009 O que é Java? 8  Java é.. 08/06/2009 Introdução à linguagem JAVA 7  Quais os seus maiores problemas quando está programando?  Ponteiros  Gerenciamento de memória  Organização  Falta de bibliotecas  Ter que reescrever parte do código ao mudar de SO  Custo de usar a tecnologia Introdução à Linguagem JAVA .2009 4 .Prof.  Um software  Uma tecnologia  Uma linguagem de programação  Uma plataforma de desenvolvimento  Uma ilha na Indonésia Introdução à Linguagem JAVA . André Negreiros FATENE .

Bill Joy e James Gosling (Líder do projeto)  Tinha como objetivo desenvolver uma linguagem para aparelhos eletrônicos em rede com os seguintes requisitos:  Suporte a diferentes plataformas  Distribuição de software via rede  Garantia de confiabilidade de código  Baixos requisitos de memória  Código pequeno Introdução à Linguagem JAVA .Prof. mas. atualmente. Scott McNealy.2009 .. mas ressurgiu posteriormente com as aplicações web (Applets)  Versão 1.2009 5 . decolou com as aplicações do lado Servidor Introdução à Linguagem JAVA .. 9  Projeto Green  Formado por Patrick Naughton.Prof...0 lançada em 1996  A tecnologia Java nasceu com um objetivo.História 10  Projeto fracassou. 08/06/2009 História. André Negreiros FATENE . foi lançada com outro. André Negreiros FATENE .

javax.Prof.org) formado pela Sun e usuários Java. utilizada em ambientes de produção. Inclui compilador e a Virtual Machine.  Java possui uma coleção de APIs (bibliotecas) padrão que podem ser usadas para construir aplicações  Organizadas em pacotes (java. atualmente na versão 6.2009 Terminologias 12  JDK . Introdução à Linguagem JAVA .  Java 2: Terminologia utilizada a partir da versão 1.1 para identificar a plataforma Java.jcp.  JVM: Máquina Virtual Java. André Negreiros FATENE . André Negreiros FATENE . Não contém o compilador. Máquina imaginária implementada como uma aplicação de sottware em uma máquina real.  Ambientes de execução (JRE) e de desenvolvimento (SDK) são fornecidos por fabricantes de hardware e software.2009 6 .*. 08/06/2009 Tecnologia e conceitos 11  A evolução da linguagem é controlada pelo Java Community Process (www.  J2RE: Java 2 Runtime Environment: Ambiente apenas para execução de aplicações Java.  J2SDK: Java 2 Software Development Kit: Ambiente completo para o desenvolvedor Java.* e extensões)  Usadas pelos ambientes JRE e SDK Introdução à Linguagem JAVA .2 da plataforma Java.Prof.Java Development Kit: Terminoligia utilizada até a versão 1.

4  Java 2 Platform 5.Prof.2009 7 . André Negreiros FATENE .2  Java 2 Platform 1.3  Java 2 Platform 1.Prof.1  Java 2 Platform 1.0 (Tiger)  Java Platform 6 (Mustang)  Próxima: Java Platform 7 (Dolphin) Introdução à Linguagem JAVA .2009 Plataformas Java 14  Java SE: Standard Edition  Baseda linguagem  Ambiente desktop  Java EE: Enterprise Edition  Ambiente distribuído  Aplicações corporativas  Java ME: Micro Edition  Pequenos dispositivos Introdução à Linguagem JAVA . André Negreiros FATENE .0  Java Development Kit 1. 08/06/2009 Java hoje 13  13 anos!  Versões:  Java 1.

Prof. André Negreiros FATENE .2009 8 . André Negreiros FATENE . 08/06/2009 Plataformas Java 15 Introdução à Linguagem JAVA .2009 Características da linguagem 16  Orientada a objetos  Código Móvel  Distribuída  Multi-Thread  Compilada/Interpretada  Garbage Collected  Robusta  Case Sensitive  Segura  Tratamento de  Portável Exceções  Gratuita Introdução à Linguagem JAVA .Prof.

urls. Introdução à Linguagem JAVA . Introdução à Linguagem JAVA . protected. André Negreiros FATENE . etc. 08/06/2009 Características da linguagem 17  Orientada a Objetos:  Quase pura (tipos primitivos)  Objetos  Classes (abstratas e concretas)  Encapsulamento  Proteção (public.2009 Características da linguagem 18  Distribuída  Pacote de classes para programação em rede (java. datagrama.2009 9 .Prof. default)  Herança (simples)  Polimorfismo.  Integração com Corba (Objetos Distribuídos).Prof.  Excelente para o desenvolvimento de aplicações Cliente/Servidor. private. http.Net): sockets.  RMI. André Negreiros FATENE .

08/06/2009 Características da linguagem 19  Compilada/Interpretada:  Compilada (bytecodes).  Interpretação (máquina virtual.“write once run anywhere” Introdução à Linguagem JAVA . André Negreiros FATENE . André Negreiros FATENE .Prof. jvm).  Portável .2009 10 .Prof.2009 Características da linguagem 20  Compilada / Interpretada Introdução à Linguagem JAVA .

08/06/2009 Características da linguagem 21  Compilada / Interpretada Introdução à Linguagem JAVA .2009 Características da linguagem 22  Compilada / Interpretada Introdução à Linguagem JAVA .Prof. André Negreiros FATENE . André Negreiros FATENE .2009 11 .Prof.

Prof. Introdução à Linguagem JAVA . 08/06/2009 Características da linguagem 23  Portável:  Planejada para sistemas embutidos: hardware muito heterogêneo. André Negreiros FATENE .  Bytecode portável.Prof.2009 Características da linguagem 24  Portável Introdução à Linguagem JAVA .  ‘Escreva uma vez e rode em qualquer lugar’.2009 12 . André Negreiros FATENE .

 Possui tratamento de exceções.Prof.  Gerenciador de segurança: .Prof.ram.  Verificação dos bytecodes que trafegam na rede.  Implementa o conceito de cast’s.classe securitymanager.  Acesso controlado aos recursos do sistema: . Introdução à Linguagem JAVA . sistema de arquivos.  Verificações obrigatórias (ex: arrays). André Negreiros FATENE .  Fortemente tipada. André Negreiros FATENE . .2009 13 .(não utiliza ponteiros explícitos).2009 Características da linguagem 26  Segura:  Não possui ponteiros explícitos. 08/06/2009 Características da Linguagem 25  Robusta:  Não permite acesso direto à memória. Introdução à Linguagem JAVA .  Possui coletor de lixo (garbagge collector).

Introdução à Linguagem JAVA . throws.2009 Características da linguagem 28  Tratamento de Exceções:  Permite o tratamento de situações excepcionais. André Negreiros FATENE .  É portável. André Negreiros FATENE .  Exceções embutidas.Lang).try.  Permite a criação de novas exceções . throw.definição de situações excepcionais. 08/06/2009 Características da linguagem 27  Multi-Threaded:  Implementa threads de forma bastante simples e segura. faz parte do pacote padrão de java (pacote java. finally. até mesmo em plataformas sem threads.Prof.Prof.  Sintaxe apropriada: . Introdução à Linguagem JAVA . catch.2009 14 .  O suporte é dado pela própria linguagem.

www. de acordo com a JVM Introdução à Linguagem JAVA .org)  Eclipse (Gratuito .com) Introdução à Linguagem JAVA . 08/06/2009 Características da linguagem 29  Garbage Collected:  Memória alocada que não está sendo mais utilizada é liberada  Em outras linguagem desalocar memória é responsabilidade do programador  Acontece naturalmente.org)  Jbuilder (Pago . André Negreiros FATENE .eclipse.www.Prof.netbeans. não é preciso disparar uma processo  Pode variar drasticamente.Prof.2009 Onde posso programar? 30  Bloco de notas  Interface Development Environment (IDE):  Netbeans (Gratuito .2009 15 .www.borland. André Negreiros FATENE .

Edição.. 2005. Bert. BATES.  HORSTMAN. Alta Books. 2006.. André Negreiros FATENE .  SIERRA.  HORSTMAN. Prentice Hall Brasil. 2006. “Java – Use a cabeça”. “Certificação Sun para Programador Java 5”. Volume I – Fundamentos”. André Negreiros FATENE . Alta Books. Edição.2009 16 . Introdução à Linguagem JAVA . Makron Books. 2005. “Core Java 2. “Java – Como Programar”.Prof. 6a. Volume II – Recursos Avançados”. Cay S. Kathy. D.. Kathy. 7a. Cay S.Prof. 2 ed. Bert. DEITEL P. M. Alta Books. 08/06/2009 Referências bibliográficas 31  DEITEL.  SIERRA. 2000.. J. BATES.2009 Referências Bibliográficas 32 Introdução à Linguagem JAVA . “Core Java 2.

Prof. 08/06/2009 Bibliografia complementar 33  Listas de Discussão  CEJUG (Ceará Java Users Group): http://www. André Negreiros FATENE .org Introdução à Linguagem JAVA .cejug.2009 17 .