Introdução a linguagem
Java
Prof: Leo Cabral - Larback
E-mail: leo@polimig.com.br
Esta apresentação foi elaborada pelo professor
Thiago Moreira - ttrmoreira@gmail.com
A História de Java
 Muitas pessoas acreditam que os microprocessadores terão um
grande impacto nos dispositivos eletrônicos destinados ao
consumidor final.
 Reconhecendo isso a Sun Microsystems financiou uma pesquisa
corporativa interna com o codinome Green em 1991.
A História de Java
 O Projeto resultou no desenvolvimento de um linguagem baseada
em C e C++
 Seu criador James Goling, chamou de Oak (carvalho) – Homenagem a
uma árvore que dava para a janela do seu escritório da Sun.
 Na época já existia uma linguagem de programação chamada Oak.
Até que uma equipe da Sun visitou uma cafeteria local, o nome
Java (cidade de origem de um tipo de café importado) foi sugerido e
pegou.
A História de Java
 O projeto Green atravessava grandes dificuldades.
 Na época o mercado para dispositivos eletrônicos inteligentes não
vingava.
 Pior ainda, um contrato importante pela qual a Sun competia fora
concedido a outra empresa.
 O projeto corria sério risco de cancelamento.
A História de Java
 A World Wide Web explodiu em popularidade em 1993.
 Possibilidade para a Sun explorar o potencial de utilizar Java para
criar páginas da web com o chamado conteúdo dinâmico.
 Em maio 1995, a Sun anunciou Java formalmente em uma
conferência importante.
 Java gerou um interesse imediato na comunidade comercial por
causa do fenomenal interesse pela World Wide Web.
A História de Java
 Devido ao sucesso da linguagem java hoje em dia ela é utilizada
para:
 Criar páginas da Web com conteúdo dinâmico e interativo.
 Desenvolvimento de aplicativo corporativos de grande porte
 Aprimoramento de funcionalidades de servidores da World Wide
Web.
 Fornecer aplicativos para dispositivos destinados ao consumidor
(como telefones celulares, pagers e assistentes pessoais
digitais) e para muitas outras finalidades.
A História de Java
1991 Grupo de pesquisa “Green”, na Sun Microsystems
1994 Grande crescimento da Internet,
oportunidade de lançaro Java
1995 Apresentada a Comunidade no SunWorld 95
1996
Lançamento do Netscape Navigator 2.0
com suporte ao Java
1997 Surge o JDK1.02 totalmente gratuíto
1998 Surge o Java 2
totalmente reformulado, novas Classes
Aceitação de Java no mercado
Linguagens de programação utilizadas no desenvolvimento
Interno das empresas em 2005.
Fonte:
Aceitação de Java no mercado
 Aplicações embarcadas no mercado automotivo.
 Jogos eletrônicos para celulares.
 Aplicações em equipamentos para deficientes físicos.
 Internet
 Aplicações Desktop (Ganharam força)
 Diversos tipos de dispositivos móveis
Aceitação de Java no mercado
 Percebendo o potencial do Java as gigantes IBM , ORACLE e
obviamente a Sun investem pesado em Java.
 A IBM investiu 40 milhões no desenvolvimento do projeto
Eclipse, ferramenta opensource para desenvolvimento JAVA. Da
mesma maneira, a IBM investe na utilização do Linux.
 A Sun também criou sua ferramenta de desenvolvimento Java
opensource. O NetBeans.
 A Oracle possibilita que stored procedures sejam totalmente
escritas em Java. Criou a IDE de desenvolvimento JDeveloper
para desenvolvimento em Java.
Microsoft x Sun
 A Microsoft cria o J++, e o anuncia como a ferramenta Java da
Microsoft. Segundo a Microsoft, o J++ reúne o poder da plataforma
Windows à produtividade do Java.
 O J++ porém, utilizava a API do Windows para e feria a
característica multiplataforma do Java.
 Os programas feitos para J++ não “rodariam” em outras
plataformas, afinal era necessário a API do Win32.
Microsoft x Sun
 A Sun processa a Microsoft por uso indevido da linguagem e ganha
a causa. A Microsoft não pode mais utilizar o selo de
compatibilidade do J++ com o Java.
Microsoft x Sun
 A Microsoft, como sempre, sabe reconhecer uma boa idéia e
resolve lançar sua própria plataforma de desenvolvimento. A
plataforma .Net
 Baseada na sintaxe Java, a Microsoft cria uma nova linguagem, o
chamado C#. A idéia é garantir uma migração de programadores
Java para seu ambiente.
Microsoft x Sun
 Os conceitos do .Net e Java são bastante diferentes e ambos
bastante interessantes.
 Enquanto a plataforma Java prega: Uma linguagem para vários
ambientes.
 A plataforma .Net prega várias linguagens em um único
ambiente.
 A Microsoft está fazendo um grande esforço para que seus
usuários migrem para a nova plataforma.
E o Futuro ?
 A utilização de Java nas aplicações desktops e não apenas
servidores está em franca expansão, fato que deixou James
Gosling muito feliz no último JavaOne.
 Celulares e PDA´s utilizando Java estão concretizando a idéia da
Sun de 14 anos atrás, isto é, a utilização em dispositivos
eletrônicos.
E o Futuro ?
 A Sun mudou sutilmente a estratégia da plataforma de modo que
esta se torne conhecida também do homem comum, e não apenas
dos desenvolvedores.
E o Futuro ?
 A versão 1.5. do Java privilegia a facilidade de codificação para o
programador, as novas características tornarão o desenvolvedor
mais feliz.
 A impressão é que o consórcio que desenvolve o Java sabe que
sua força vem principalmente do programador. Se souber respeitá-
lo acredita-se que a meta de 15 milhões de desenvolvedores será
alcançada.
Plataforma Java
 J2SE - Java 2 Standard Edition
 Focado em aplicações para Desktop, conectividade com Banco
de dados, interface gráfica etc...
 J2EE - Java 2 Enterprise Edition
 Focado em aplicações Corporativas, Aplicações Web
distribuídas, Servlets, JSP, web-services etc...
 J2ME - Java 2 Micro Edition
 Focado em aplicações embarcadas(embutidas), PDA´s,
celulares, além Java Card etc...
Plataforma Java
Certificações Java
Fonte: http://www.sun.com/training/certification/java/java_progj2se.html
Ferramentas de Desenvolvimento em Java
 Os desenvolvedores na tecnologia Java contam com diversas boas
opções de software para ambiente de desenvolvimento integrado
(IDE - integrated development environment), que vão do simples ao
sofisticado, do gratuito ao caríssimo.
 NetBeans, Sun Java Studio, Borland JBuilder, IntelliJ IDEA,
Oracle JDeveloper, Eclipse, etc...
Recursos necessários para o
desenvolvimento em Java
 Java Developer’s Kit;
 Compilador (Javac)
 Máquina Virtual Java (JVM)
 Visualizador de applets (appletviewer)
 Bibliotecas de desenvolvimento, API
 Javadoc - Gerador de documentação da API
 Editor de textos
 Onde encontrar http://java.sun.com/j2se/index.jsp
Java Virtual Machine
Java Virtual Machine A CLDC (Connected Limited
Device Configuration) é utilizada
em aparelhos com capacidade de
processamento e armazenamento
reduzidos, como PDAs, pager´s e
telefones celulares. Possui,
geralmente, restrições quanto o
consumo de energia, conexão à
rede e telas de
tamanho reduzido.
A CDC (Connected Device
Configuration) é voltada para
aparelhos que possuem uma
maior capacidade de
processamento e
armazenamento, como set-top
boxes e sistemas automotivos.
KVM (K Virtual Machine) => máquina virtual
para CLDC
Java HotSpot => ganhos de performance
Bibliotecas de classes Java
 Os programas em Java consistem em partes chamadas classes.
 As classes são compostas de métodos que realizam tarefas e
retornam ou não informações ao completarem suas tarefas.
 Permite programar cada pedaço que talvez seja necessário para
criar um programa em Java.
Classe: unidade de compilação
Arquivo fonte : Nome1.java
public class Nome1 {
class Nome2 {...
bytecodes
bytecodes
Nome1.class
Nome2.class
Arquivos executáveis: class
Um primeiro programa em Java:
Imprimindo uma linha de texto
1. // Um primeiro programa Java.
2.
3.
4. public class BemVindo {
5.
6. // O método main inicia a execução do aplicativo Java
7. public static void main( String [ ] args )
8. {
9. System.out.println( “Bem vindo a Programação em Java!" );
10.
11. } // fim do método main
12.
13. } // fim da classe
O que eu fiz?
 O programa feito anteriormente foi feito para exibir uma linha de
texto.
 Java utiliza notações estranhas para os não programadores.
 A linha 9 faz o trabalho real do programa
9. System.out.println( “Bem vindo a Programação em Java!" );
Revisando meu primeiro programa
1. // Um primeiro programa Java.
 // Indica que o restante da linha é um comentário
/*Esse é um comentário de múltiplas
linhas ele pode ser dividido
em várias linhas*/
Revisando meu primeiro programa
4. public class BemVindo {
 Inicia uma definição de classe para a classe Bem Vindo.
 Cada programa Java consiste em pelo menos uma definição de
classe que é definida por você – programador.
 A chave a esquerda {, inicia o corpo da definição da classe. A
chave direita (na linha 13 desse programa), }, termina a definição
da classe.
Revisando meu primeiro programa
7. public static void main( String [ ] args )
 A linha 7 faz parte de todo o aplicativo Java.
 Os aplicativos Java começam a execução por main.
 Os parênteses depois de main indicam que main é um bloco de
construção de programa denominado método.
 A chave a esquerda na linha 8 {, inicia o corpo da definição do
método. A chave direita (na linha 11 desse programa), }, termina
a definição do método.
Revisando meu primeiro programa
9. System.out.println( “Bem vindo a Programação em Java!" );
 A linha 9 instrui o computador a realizar uma ação, a saber,
imprimir o String de caracteres contido entre aspas duplas.
 System.out é conhecido como objeto de saída padrão.
 O método System.out.println exibe (ou imprime) uma linha de texto na
janela de comando.
11. } // fim do método main
12.
13. } // fim da classe
Compilando e executando seu primeiro
aplicativo Java
 Compilando
 javac BemVindo.java
 Executando
 java BemVindo
Saída esperada:
 Bem vindo a Programação em Java!"
Estrutura de um programa em Java
 Composto por uma ou mais classes
 Cada classe é escrita em um arquivo fonte separado
 O arquivo fonte deve ter o mesmo nome da classe, com o sufixo
.java
 Ex.: a classe BemVindo deve ser armazenada no arquivo
BemVindo.java
 Em geral na plataforma J2SE, todas as classes que compõem um
programa deverão estar no mesmo diretório
Convenção para nomes
 Java, como C/C++ distingue entre letras maiúsculas e minúsculas
 Exemplo: bemvindo difere de Bemvindo (case sensitive)
 Nomes de classes iniciam com maiúscula
 Exemplo: class Bemvindo
 Nomes de variáveis iniciam com minúsculas
 Exemplo: int peso;
 Nomes de métodos são verbos que iniciam com minúscula e após
usam maiúsculas
 Exemplo: alteraPeso
 Representação: Unicode (16 bits - 65.536 caracteres)
Membros de classes
 Uma classe possui como membros os campos de dados e os
métodos.
 Uma classe pode conter apenas dados.
 Uma classe pode conter apenas métodos.
 Se uma classe possui um método main com a assinatura padrão, ela
é considerada um programa.
Nomeando Variáveis
 Os nomes de variáveis não podem começar com um número;
 Não se pode fazer: int 8position;
 O que se pode fazer: int position8;
 Exemplos de declaração de variáveis
 int ano = 1998;
 boolean sair;
 int idade, altura, largura;
 String nome = “Pedro”;
Tipos Primitivos
 Tipo bits Valores
 boolean 8 true ou false
 char 16 ‘u0000’ a ‘uFFFF’
 byte 8 -128 a +127
 short 16 -32768 a +32767
 int 32 -2.147.483.648 a +2.147.483.647
 long 64 -9.223.372.036.854.775.808
 +9.223.372.036.854.775.807
 float 32 0.2329, -654.213, 78.9
 double 64 35423.4589, 9999999
Operadores Aritméticos
 Operador significado exemplo
+ Adição a + b
- Subtração a - b
* Multiplicação a * b
/ Divisão a / b
% Resto da divisão inteira a %
- Sinal negativo -a
+ Sinal positivo +a
++ Incremento unitário a++
-- Decremento unitário a --
Operadores Relacionais
 Operador significado exemplo
== Igual a == b
!= Diferente a != b
> Maior que a > b
>= Maior ou igual a a >= b
< Menor que a < b
<= Menor ou igual a a <= b
Operadores Lógicos
 Operador significado exemplo
&& E lógico (and) a && b
|| OU lógico (or) a || b
! Negação (not) !a
Operadores de Atribuição
 Suponha que c = 10.
Expressão de Exemplo Explicação Atribui
c += 7 c = c + 7 17 a c
c -= 4 c = c - 4 6 a c
e *= 2 c = c * 2 20 a c
c /= 5 c = c / 5 2 a c
g %= 3 c = c % 3 1 a c
Operadores de Incremento e Decremento
Operador Chamado de Expressão de exemplo
++ pré-incremento ++a
++ pós-incremento a++
-- pré-decremento --b
-- pós-decremento b--
Operadores de Incremento e Decremento
 Suponha que c = 5.
System.out.println(c); //imprime 5
System.out.println(c++); //imprime 5 depois pós-incrementa
System.out.println(c); //imprime 6
System.out.println(++c); //imprime 7 depois pré-incrementa
System.out.println(c); //imprime 7
Estrutura de seleção if /else
if (condição){
instruções
}
if (x < y){
System.out.println(“ x é menor que y”);
}else{
System.out.println(“ x não é menor que y”);
}
if (x == y ){
System.out.println(“x é igual a y”);
}
Estrutura de controle switch
switch (teste){
case ‘A’:
resultUm;
break;
case ‘B’:
resultDois;
break;
default: defaultresult;
}
Estrutura de repetição for
for (int i = 0; i < str.length(); i++){
System.out.println(“Satisfaz condição”);
}
Estrutura de repetição while
while (condição){
corpo do Loop;
}
int i = 0; boolean sair = false;
while (!sair){
System.out.println(“Ficar...”);
i++;
if ( i >= 10 ){sair = true;}
}
Estrutura de repetição do/while
//Sem chaves
do
instrução
while (condição);
//Com chaves
do {
instrução
}while (condição);
//Exemplo
do{
System.out.println(“Ficar...”);
i++;
if ( i >= 10 ){sair = true;}
}while (!sair);
Instruções rotuladas break e continue
//Exemplo de stop
stop:{
for (condição){
if (condiçao){
break stop; //pula para o fim do bloco stop
}
}
}
//Exemplo de continue
for (int contador = 1; contador <= 10; contador++){
if (contador == 5){
continue; //pula o código restante do laço
}
System.out.println(“O contador está em:” + contador);
}
Exercício 1.1
 Escreva uma instrução Java para realizar cada uma das seguintes
tarefas.
 Declarar que as variáveis sum e x são de tipo int.
 Atribuir 1 à variável x.
 Atribuir 0 à variável sum.
 Adicionar a variável x à variável sum e atribua o resultado a variável sum.
 Imprimir “A soma é:” e depois o valor da variável sum.
Respostas do exercício 1.1
 Declarar que as variáveis sum e x são de tipo int.
 int sum, x;
 Atribuir 1 à variável x.
 x = 1;
 Atribuir 0 à variável sum.
 sum = 0;
 Adicionar a variável x à variável sum e atribua o resultado a variável sum.
 sum += x ; ou sum = sum + x;
 Imprimir “A soma é:” e depois o valor da variável sum.
 System.out.println(“A soma é:” + sum);
Exercício 1.2
 Combine as instruções que você escreveu no exercício 1.1 em um
aplicativo Java que calcula e imprime a soma dos inteiros de 1 a 10.
Utilize a estrutura while para repetir as instruções de cálculo e
incremento. O laço deve terminar quando o valor de x se tornar 11.
Respostas do exercício 1.2
//Calcula a soma dos inteiros de 1 a 10
public class Calculadora {
public static void main( String [ ] args) {
int sum, x;
x = 1;
sum = 0;
while ( x < = 10){
sum += x;
++x;
}
System.out.println(“ A soma é:” + sum);
}
}

Mais conteúdo relacionado

PDF
ODP
Java 01 Java Visao Geral Resumo
PDF
Java basico modulo_01
ODP
Java e Software Livre
PPT
Conhecendo Java
PPT
Java, historico e futuro
DOCX
Introdução a linguagem java
PDF
Introdução ao Desenvolvimento Android
Java 01 Java Visao Geral Resumo
Java basico modulo_01
Java e Software Livre
Conhecendo Java
Java, historico e futuro
Introdução a linguagem java
Introdução ao Desenvolvimento Android

Mais procurados (16)

PPT
Apostila de Fundamentos Java
PDF
Introdução a Plataforma Java EE
PDF
Descomplicando o Android
PDF
Apostila java completo
PDF
Programação em java linguagem, ap is, boas práticas e eclipse
PDF
Programe seu androide
PDF
Palestra Desenvolvimento de Apps Móveis: Iniciando no iOS e Android
PPTX
Programação Orientada a Objetos com Java
PDF
Curso de Google Android - Aula 1
PDF
Android Aula 2
PPTX
Plataforma Android
PDF
Programação Desktop: Uma abordagem com Java
PDF
Introdução à Programação em Java - Aula 1 (PT-PT)
PPT
Minicurso Java
PPT
Introdução ao JAVA (linguagem de programação WEB)
PPTX
Oficina Sesc Android - V1
Apostila de Fundamentos Java
Introdução a Plataforma Java EE
Descomplicando o Android
Apostila java completo
Programação em java linguagem, ap is, boas práticas e eclipse
Programe seu androide
Palestra Desenvolvimento de Apps Móveis: Iniciando no iOS e Android
Programação Orientada a Objetos com Java
Curso de Google Android - Aula 1
Android Aula 2
Plataforma Android
Programação Desktop: Uma abordagem com Java
Introdução à Programação em Java - Aula 1 (PT-PT)
Minicurso Java
Introdução ao JAVA (linguagem de programação WEB)
Oficina Sesc Android - V1
Anúncio

Semelhante a 27072010221224.introdução a java aula 1 (20)

PPT
Capacitacao java aula-01-01-conceitos
ODP
Java 01 Java Visao Geral Detalhado
ODP
Java 01 Java Visao Geral
PDF
Java Fundamentos
PPTX
01 introducao ao java
PPT
PPT
Java Seminar
PPTX
Curso Android - Dia 1 - Apresentação java
PDF
Mini aula-java
PDF
Mini aula-java
PPTX
Curso de Java 1 - (Introdução Geral).pptx
PPTX
Java -aula_01
PDF
Conhecendo Java
PDF
Aula 2 - POO: Fundamentos da linguagem Java
PPTX
Apresentação1
PPT
Apostila Java
PPT
Apostila Java
PPT
Java20141215 17[1]
PPT
Aula1
PDF
Java: Muito mais que uma linguagem!
Capacitacao java aula-01-01-conceitos
Java 01 Java Visao Geral Detalhado
Java 01 Java Visao Geral
Java Fundamentos
01 introducao ao java
Java Seminar
Curso Android - Dia 1 - Apresentação java
Mini aula-java
Mini aula-java
Curso de Java 1 - (Introdução Geral).pptx
Java -aula_01
Conhecendo Java
Aula 2 - POO: Fundamentos da linguagem Java
Apresentação1
Apostila Java
Apostila Java
Java20141215 17[1]
Aula1
Java: Muito mais que uma linguagem!
Anúncio

Último (20)

PDF
Aula 9 - Funções 202yttvrcrg5-1.pptx.pdf
PDF
Processos no SAP Extended Warehouse Management, EWM100 Col26
PDF
Banco de Dados 2atualização de Banco de d
PPTX
Do código à carreira: O Profissional de TI que o mercado realmente quer - com...
PPTX
3b - Bradesco Lean Agile Training Plan - Ritos Operacionais (1).pptx
PPTX
Aula 9 - Funções em Python (Introdução à Ciência da Computação)
PPTX
Aula 7 - Listas em Python (Introdução à Ciencia da Computação)
PDF
Visão geral da SAP, SAP01 Col18, Introdução sistema SAP,
PDF
Jira Software projetos completos com scrum
PDF
Metodologia Scrumban-XP - Um Guia Rápido (MrSomebody19).pdf
PDF
Capacitação em Logística – Instituto Federal
PDF
Customizing básico em SAP Extended Warehouse Management, EWM110 Col26
PDF
Processamento da remessa no SAP ERP, SCM610 Col15
PDF
SEMINÁRIO DE IHC - A interface Homem-Máquina
PDF
resumo de instalação de placa arduino em jardim vertical para fertirrigação
PDF
ASCENSÃO E QUEDA DO SOFTWARE LIVRE NO ESTADO BRASILEIRO
PPT
Apresentacao Do Trabalho de Inteligencia
PPT
Conceitos básicos de Redes Neurais Artificiais
PDF
Integração da produção com o SAP Extended Warehouse Management, EWM130 Col26
PPTX
Analise Estatica de Compiladores para criar uma nova LP
Aula 9 - Funções 202yttvrcrg5-1.pptx.pdf
Processos no SAP Extended Warehouse Management, EWM100 Col26
Banco de Dados 2atualização de Banco de d
Do código à carreira: O Profissional de TI que o mercado realmente quer - com...
3b - Bradesco Lean Agile Training Plan - Ritos Operacionais (1).pptx
Aula 9 - Funções em Python (Introdução à Ciência da Computação)
Aula 7 - Listas em Python (Introdução à Ciencia da Computação)
Visão geral da SAP, SAP01 Col18, Introdução sistema SAP,
Jira Software projetos completos com scrum
Metodologia Scrumban-XP - Um Guia Rápido (MrSomebody19).pdf
Capacitação em Logística – Instituto Federal
Customizing básico em SAP Extended Warehouse Management, EWM110 Col26
Processamento da remessa no SAP ERP, SCM610 Col15
SEMINÁRIO DE IHC - A interface Homem-Máquina
resumo de instalação de placa arduino em jardim vertical para fertirrigação
ASCENSÃO E QUEDA DO SOFTWARE LIVRE NO ESTADO BRASILEIRO
Apresentacao Do Trabalho de Inteligencia
Conceitos básicos de Redes Neurais Artificiais
Integração da produção com o SAP Extended Warehouse Management, EWM130 Col26
Analise Estatica de Compiladores para criar uma nova LP

27072010221224.introdução a java aula 1

  • 1. Introdução a linguagem Java Prof: Leo Cabral - Larback E-mail: [email protected] Esta apresentação foi elaborada pelo professor Thiago Moreira - [email protected]
  • 2. A História de Java  Muitas pessoas acreditam que os microprocessadores terão um grande impacto nos dispositivos eletrônicos destinados ao consumidor final.  Reconhecendo isso a Sun Microsystems financiou uma pesquisa corporativa interna com o codinome Green em 1991.
  • 3. A História de Java  O Projeto resultou no desenvolvimento de um linguagem baseada em C e C++  Seu criador James Goling, chamou de Oak (carvalho) – Homenagem a uma árvore que dava para a janela do seu escritório da Sun.  Na época já existia uma linguagem de programação chamada Oak. Até que uma equipe da Sun visitou uma cafeteria local, o nome Java (cidade de origem de um tipo de café importado) foi sugerido e pegou.
  • 4. A História de Java  O projeto Green atravessava grandes dificuldades.  Na época o mercado para dispositivos eletrônicos inteligentes não vingava.  Pior ainda, um contrato importante pela qual a Sun competia fora concedido a outra empresa.  O projeto corria sério risco de cancelamento.
  • 5. A História de Java  A World Wide Web explodiu em popularidade em 1993.  Possibilidade para a Sun explorar o potencial de utilizar Java para criar páginas da web com o chamado conteúdo dinâmico.  Em maio 1995, a Sun anunciou Java formalmente em uma conferência importante.  Java gerou um interesse imediato na comunidade comercial por causa do fenomenal interesse pela World Wide Web.
  • 6. A História de Java  Devido ao sucesso da linguagem java hoje em dia ela é utilizada para:  Criar páginas da Web com conteúdo dinâmico e interativo.  Desenvolvimento de aplicativo corporativos de grande porte  Aprimoramento de funcionalidades de servidores da World Wide Web.  Fornecer aplicativos para dispositivos destinados ao consumidor (como telefones celulares, pagers e assistentes pessoais digitais) e para muitas outras finalidades.
  • 7. A História de Java 1991 Grupo de pesquisa “Green”, na Sun Microsystems 1994 Grande crescimento da Internet, oportunidade de lançaro Java 1995 Apresentada a Comunidade no SunWorld 95 1996 Lançamento do Netscape Navigator 2.0 com suporte ao Java 1997 Surge o JDK1.02 totalmente gratuíto 1998 Surge o Java 2 totalmente reformulado, novas Classes
  • 8. Aceitação de Java no mercado Linguagens de programação utilizadas no desenvolvimento Interno das empresas em 2005. Fonte:
  • 9. Aceitação de Java no mercado  Aplicações embarcadas no mercado automotivo.  Jogos eletrônicos para celulares.  Aplicações em equipamentos para deficientes físicos.  Internet  Aplicações Desktop (Ganharam força)  Diversos tipos de dispositivos móveis
  • 10. Aceitação de Java no mercado  Percebendo o potencial do Java as gigantes IBM , ORACLE e obviamente a Sun investem pesado em Java.  A IBM investiu 40 milhões no desenvolvimento do projeto Eclipse, ferramenta opensource para desenvolvimento JAVA. Da mesma maneira, a IBM investe na utilização do Linux.  A Sun também criou sua ferramenta de desenvolvimento Java opensource. O NetBeans.  A Oracle possibilita que stored procedures sejam totalmente escritas em Java. Criou a IDE de desenvolvimento JDeveloper para desenvolvimento em Java.
  • 11. Microsoft x Sun  A Microsoft cria o J++, e o anuncia como a ferramenta Java da Microsoft. Segundo a Microsoft, o J++ reúne o poder da plataforma Windows à produtividade do Java.  O J++ porém, utilizava a API do Windows para e feria a característica multiplataforma do Java.  Os programas feitos para J++ não “rodariam” em outras plataformas, afinal era necessário a API do Win32.
  • 12. Microsoft x Sun  A Sun processa a Microsoft por uso indevido da linguagem e ganha a causa. A Microsoft não pode mais utilizar o selo de compatibilidade do J++ com o Java.
  • 13. Microsoft x Sun  A Microsoft, como sempre, sabe reconhecer uma boa idéia e resolve lançar sua própria plataforma de desenvolvimento. A plataforma .Net  Baseada na sintaxe Java, a Microsoft cria uma nova linguagem, o chamado C#. A idéia é garantir uma migração de programadores Java para seu ambiente.
  • 14. Microsoft x Sun  Os conceitos do .Net e Java são bastante diferentes e ambos bastante interessantes.  Enquanto a plataforma Java prega: Uma linguagem para vários ambientes.  A plataforma .Net prega várias linguagens em um único ambiente.  A Microsoft está fazendo um grande esforço para que seus usuários migrem para a nova plataforma.
  • 15. E o Futuro ?  A utilização de Java nas aplicações desktops e não apenas servidores está em franca expansão, fato que deixou James Gosling muito feliz no último JavaOne.  Celulares e PDA´s utilizando Java estão concretizando a idéia da Sun de 14 anos atrás, isto é, a utilização em dispositivos eletrônicos.
  • 16. E o Futuro ?  A Sun mudou sutilmente a estratégia da plataforma de modo que esta se torne conhecida também do homem comum, e não apenas dos desenvolvedores.
  • 17. E o Futuro ?  A versão 1.5. do Java privilegia a facilidade de codificação para o programador, as novas características tornarão o desenvolvedor mais feliz.  A impressão é que o consórcio que desenvolve o Java sabe que sua força vem principalmente do programador. Se souber respeitá- lo acredita-se que a meta de 15 milhões de desenvolvedores será alcançada.
  • 18. Plataforma Java  J2SE - Java 2 Standard Edition  Focado em aplicações para Desktop, conectividade com Banco de dados, interface gráfica etc...  J2EE - Java 2 Enterprise Edition  Focado em aplicações Corporativas, Aplicações Web distribuídas, Servlets, JSP, web-services etc...  J2ME - Java 2 Micro Edition  Focado em aplicações embarcadas(embutidas), PDA´s, celulares, além Java Card etc...
  • 21. Ferramentas de Desenvolvimento em Java  Os desenvolvedores na tecnologia Java contam com diversas boas opções de software para ambiente de desenvolvimento integrado (IDE - integrated development environment), que vão do simples ao sofisticado, do gratuito ao caríssimo.  NetBeans, Sun Java Studio, Borland JBuilder, IntelliJ IDEA, Oracle JDeveloper, Eclipse, etc...
  • 22. Recursos necessários para o desenvolvimento em Java  Java Developer’s Kit;  Compilador (Javac)  Máquina Virtual Java (JVM)  Visualizador de applets (appletviewer)  Bibliotecas de desenvolvimento, API  Javadoc - Gerador de documentação da API  Editor de textos  Onde encontrar http://java.sun.com/j2se/index.jsp
  • 24. Java Virtual Machine A CLDC (Connected Limited Device Configuration) é utilizada em aparelhos com capacidade de processamento e armazenamento reduzidos, como PDAs, pager´s e telefones celulares. Possui, geralmente, restrições quanto o consumo de energia, conexão à rede e telas de tamanho reduzido. A CDC (Connected Device Configuration) é voltada para aparelhos que possuem uma maior capacidade de processamento e armazenamento, como set-top boxes e sistemas automotivos. KVM (K Virtual Machine) => máquina virtual para CLDC Java HotSpot => ganhos de performance
  • 25. Bibliotecas de classes Java  Os programas em Java consistem em partes chamadas classes.  As classes são compostas de métodos que realizam tarefas e retornam ou não informações ao completarem suas tarefas.  Permite programar cada pedaço que talvez seja necessário para criar um programa em Java.
  • 26. Classe: unidade de compilação Arquivo fonte : Nome1.java public class Nome1 { class Nome2 {... bytecodes bytecodes Nome1.class Nome2.class Arquivos executáveis: class
  • 27. Um primeiro programa em Java: Imprimindo uma linha de texto 1. // Um primeiro programa Java. 2. 3. 4. public class BemVindo { 5. 6. // O método main inicia a execução do aplicativo Java 7. public static void main( String [ ] args ) 8. { 9. System.out.println( “Bem vindo a Programação em Java!" ); 10. 11. } // fim do método main 12. 13. } // fim da classe
  • 28. O que eu fiz?  O programa feito anteriormente foi feito para exibir uma linha de texto.  Java utiliza notações estranhas para os não programadores.  A linha 9 faz o trabalho real do programa 9. System.out.println( “Bem vindo a Programação em Java!" );
  • 29. Revisando meu primeiro programa 1. // Um primeiro programa Java.  // Indica que o restante da linha é um comentário /*Esse é um comentário de múltiplas linhas ele pode ser dividido em várias linhas*/
  • 30. Revisando meu primeiro programa 4. public class BemVindo {  Inicia uma definição de classe para a classe Bem Vindo.  Cada programa Java consiste em pelo menos uma definição de classe que é definida por você – programador.  A chave a esquerda {, inicia o corpo da definição da classe. A chave direita (na linha 13 desse programa), }, termina a definição da classe.
  • 31. Revisando meu primeiro programa 7. public static void main( String [ ] args )  A linha 7 faz parte de todo o aplicativo Java.  Os aplicativos Java começam a execução por main.  Os parênteses depois de main indicam que main é um bloco de construção de programa denominado método.  A chave a esquerda na linha 8 {, inicia o corpo da definição do método. A chave direita (na linha 11 desse programa), }, termina a definição do método.
  • 32. Revisando meu primeiro programa 9. System.out.println( “Bem vindo a Programação em Java!" );  A linha 9 instrui o computador a realizar uma ação, a saber, imprimir o String de caracteres contido entre aspas duplas.  System.out é conhecido como objeto de saída padrão.  O método System.out.println exibe (ou imprime) uma linha de texto na janela de comando. 11. } // fim do método main 12. 13. } // fim da classe
  • 33. Compilando e executando seu primeiro aplicativo Java  Compilando  javac BemVindo.java  Executando  java BemVindo
  • 34. Saída esperada:  Bem vindo a Programação em Java!"
  • 35. Estrutura de um programa em Java  Composto por uma ou mais classes  Cada classe é escrita em um arquivo fonte separado  O arquivo fonte deve ter o mesmo nome da classe, com o sufixo .java  Ex.: a classe BemVindo deve ser armazenada no arquivo BemVindo.java  Em geral na plataforma J2SE, todas as classes que compõem um programa deverão estar no mesmo diretório
  • 36. Convenção para nomes  Java, como C/C++ distingue entre letras maiúsculas e minúsculas  Exemplo: bemvindo difere de Bemvindo (case sensitive)  Nomes de classes iniciam com maiúscula  Exemplo: class Bemvindo  Nomes de variáveis iniciam com minúsculas  Exemplo: int peso;  Nomes de métodos são verbos que iniciam com minúscula e após usam maiúsculas  Exemplo: alteraPeso  Representação: Unicode (16 bits - 65.536 caracteres)
  • 37. Membros de classes  Uma classe possui como membros os campos de dados e os métodos.  Uma classe pode conter apenas dados.  Uma classe pode conter apenas métodos.  Se uma classe possui um método main com a assinatura padrão, ela é considerada um programa.
  • 38. Nomeando Variáveis  Os nomes de variáveis não podem começar com um número;  Não se pode fazer: int 8position;  O que se pode fazer: int position8;  Exemplos de declaração de variáveis  int ano = 1998;  boolean sair;  int idade, altura, largura;  String nome = “Pedro”;
  • 39. Tipos Primitivos  Tipo bits Valores  boolean 8 true ou false  char 16 ‘u0000’ a ‘uFFFF’  byte 8 -128 a +127  short 16 -32768 a +32767  int 32 -2.147.483.648 a +2.147.483.647  long 64 -9.223.372.036.854.775.808  +9.223.372.036.854.775.807  float 32 0.2329, -654.213, 78.9  double 64 35423.4589, 9999999
  • 40. Operadores Aritméticos  Operador significado exemplo + Adição a + b - Subtração a - b * Multiplicação a * b / Divisão a / b % Resto da divisão inteira a % - Sinal negativo -a + Sinal positivo +a ++ Incremento unitário a++ -- Decremento unitário a --
  • 41. Operadores Relacionais  Operador significado exemplo == Igual a == b != Diferente a != b > Maior que a > b >= Maior ou igual a a >= b < Menor que a < b <= Menor ou igual a a <= b
  • 42. Operadores Lógicos  Operador significado exemplo && E lógico (and) a && b || OU lógico (or) a || b ! Negação (not) !a
  • 43. Operadores de Atribuição  Suponha que c = 10. Expressão de Exemplo Explicação Atribui c += 7 c = c + 7 17 a c c -= 4 c = c - 4 6 a c e *= 2 c = c * 2 20 a c c /= 5 c = c / 5 2 a c g %= 3 c = c % 3 1 a c
  • 44. Operadores de Incremento e Decremento Operador Chamado de Expressão de exemplo ++ pré-incremento ++a ++ pós-incremento a++ -- pré-decremento --b -- pós-decremento b--
  • 45. Operadores de Incremento e Decremento  Suponha que c = 5. System.out.println(c); //imprime 5 System.out.println(c++); //imprime 5 depois pós-incrementa System.out.println(c); //imprime 6 System.out.println(++c); //imprime 7 depois pré-incrementa System.out.println(c); //imprime 7
  • 46. Estrutura de seleção if /else if (condição){ instruções } if (x < y){ System.out.println(“ x é menor que y”); }else{ System.out.println(“ x não é menor que y”); } if (x == y ){ System.out.println(“x é igual a y”); }
  • 47. Estrutura de controle switch switch (teste){ case ‘A’: resultUm; break; case ‘B’: resultDois; break; default: defaultresult; }
  • 48. Estrutura de repetição for for (int i = 0; i < str.length(); i++){ System.out.println(“Satisfaz condição”); }
  • 49. Estrutura de repetição while while (condição){ corpo do Loop; } int i = 0; boolean sair = false; while (!sair){ System.out.println(“Ficar...”); i++; if ( i >= 10 ){sair = true;} }
  • 50. Estrutura de repetição do/while //Sem chaves do instrução while (condição); //Com chaves do { instrução }while (condição); //Exemplo do{ System.out.println(“Ficar...”); i++; if ( i >= 10 ){sair = true;} }while (!sair);
  • 51. Instruções rotuladas break e continue //Exemplo de stop stop:{ for (condição){ if (condiçao){ break stop; //pula para o fim do bloco stop } } } //Exemplo de continue for (int contador = 1; contador <= 10; contador++){ if (contador == 5){ continue; //pula o código restante do laço } System.out.println(“O contador está em:” + contador); }
  • 52. Exercício 1.1  Escreva uma instrução Java para realizar cada uma das seguintes tarefas.  Declarar que as variáveis sum e x são de tipo int.  Atribuir 1 à variável x.  Atribuir 0 à variável sum.  Adicionar a variável x à variável sum e atribua o resultado a variável sum.  Imprimir “A soma é:” e depois o valor da variável sum.
  • 53. Respostas do exercício 1.1  Declarar que as variáveis sum e x são de tipo int.  int sum, x;  Atribuir 1 à variável x.  x = 1;  Atribuir 0 à variável sum.  sum = 0;  Adicionar a variável x à variável sum e atribua o resultado a variável sum.  sum += x ; ou sum = sum + x;  Imprimir “A soma é:” e depois o valor da variável sum.  System.out.println(“A soma é:” + sum);
  • 54. Exercício 1.2  Combine as instruções que você escreveu no exercício 1.1 em um aplicativo Java que calcula e imprime a soma dos inteiros de 1 a 10. Utilize a estrutura while para repetir as instruções de cálculo e incremento. O laço deve terminar quando o valor de x se tornar 11.
  • 55. Respostas do exercício 1.2 //Calcula a soma dos inteiros de 1 a 10 public class Calculadora { public static void main( String [ ] args) { int sum, x; x = 1; sum = 0; while ( x < = 10){ sum += x; ++x; } System.out.println(“ A soma é:” + sum); } }