Introdução a linguagem
Java
Prof: Leo Cabral - Larback
E-mail: [email protected]
Esta apresentação foi elaborada pelo professor
Thiago Moreira - [email protected]
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
1998
1997
1994
1991
Surge o JDK 1.02 totalmente gratuíto
Lançamento do Netscape Navigator 2.0
com suporte ao Java
1996
1995
Surge o Java 2
totalmente reformulado, novas Classes
Apresentada a Comunidade no SunWorld 95
Grande crescimento da Internet,
oportunidade de lançar o Java
Grupo de pesquisa “Green”, na Sun Microsystems
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 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
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.
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
Arquivos executáveis: class
Nome1.class
public class Nome1 {
bytecodes
Nome2.class
class Nome2 {...
bytecodes
Um primeiro programa em Java:
Imprimindo uma linha de texto
1.
// Um primeiro programa Java.
2.
3.
4.
public class BemVindo {
5.
6.
7.
8.
9.
// O método main inicia a execução do aplicativo Java
public static void main( String [ ] args )
{
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
boolean
char
byte
short
int
long
bits
8
16
8
16
32
64
float
double
32
64



Valores
true ou false
‘\u0000’ a ‘\uFFFF’
-128 a +127
-32768 a +32767
-2.147.483.648 a +2.147.483.647
-9.223.372.036.854.775.808
+9.223.372.036.854.775.807
0.2329, -654.213, 78.9
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
Igual
Diferente
Maior que
Maior ou igual a
Menor que
Menor ou igual a
exemplo
a == b
a != b
a>b
a >= b
a<b
a <= b
Operadores Lógicos

Operador
&&
||
!
significado
E lógico (and)
OU lógico (or)
Negação (not)
exemplo
a && b
a || b
!a
Operadores de Atribuição

Suponha que c = 10.
Expressão de Exemplo
Explicação
Atribui
c += 7
c -= 4
e *= 2
c /= 5
g %= 3
c=c+7
c=c-4
c=c*2
c=c/5
c=c%3
17 a c
6ac
20 a c
2ac
1ac
Operadores de Incremento e Decremento
Operador Chamado de
++
++
---
Expressão de exemplo
pré-incremento
pós-incremento
pré-decremento
pós-decremento
++a
a++
--b
b--
Operadores de Incremento e Decremento

Suponha que c = 5.
System.out.println(c);
System.out.println(c++);
System.out.println(c);
System.out.println(++c);
System.out.println(c);
//imprime 5
//imprime 5 depois pós-incrementa
//imprime 6
//imprime 7 depois pré-incrementa
//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.


Atribuir 1 à variável x.


sum = 0;
Adicionar a variável x à variável sum e atribua o resultado a variável
sum.


x = 1;
Atribuir 0 à variável sum.


int sum, x;
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);
}
}
Download

Baixar arquivos anexos