Sei sulla pagina 1di 35

1.

Introduo
Cdigos dos Exemplos
http://wps.prenhall.com/br_deitel_java_comoprogramar_8/147/37687/96480 59.cw/index.html

Configurando a varivel de ambiente PATH


Clique com boto auxiliar do mouse no cone "Meu computador" e v em "Propriedades". Clique em "Configuraes avanadas do sistema" e depois em "Variveis de ambiente". Em "Variveis do sistema" voc ir clicar em "Nova". O nome da varivel voc coloca: ClassPath Em valor da varivel voc coloca os endereos guardados anteriormente de modo que fique dessa maneira: ;C:\Program Files\Java\jdk1.6.0_17\src.zip;C:\Program Files\Java\jdk1.6.0_17\lib\tools.jar Agora vamos configurar a varivel Path que est em Variveis do sistema tambm... Voc seleciona a varivel Path e clica em Editar, em Valor da varivel voc vai ACRESCENTAR (nada de apagar valores) o seu endereo do jdk, no meu caso ficaria assim: ;C:\Program Files\Java\jdk1.6.0_17\bin
2005 by Pearson Education do Brasil

1.1 Linguagens de mquina assembly e de alto nvel


Linguagens de mquina
Linguagem natural do computador definida pelo seu projeto de hardware. Dependente de mquina.

Linguagens assembly
Abreviaes semelhantes ao idioma ingls representam operaes de computador. Programas tradutores assemblers convertem programas de linguagem assembly em linguagem de mquina.

Linguagens de alto nvel


Permitem escrever instrues mais semelhantes lngua inglesa. Contm operaes matemticas comumente utilizadas. Os compiladores convertem a linguagem de mquina.

Interpretadores
Executam programas de linguagem de alto nvel sem compilao.

2005 by Pearson Education do Brasil

1.2 Histria do C e do C++


C++
Evoluiu a partir do C.
Evoluiu a partir do BCPL e do B.

Fornece capacidades de programao orientada a objetos.

Objetos
Componentes reutilizveis de software que modelam itens do mundo real.

2005 by Pearson Education do Brasil

1.3 Histria do Java


Java
Originalmente desenvolvido para dispositivos eletrnicos inteligentes de consumo popular. Depois utilizado para criar pginas da Web com contedo dinmico. Agora tambm utilizado para:
Desenvolver aplicativos corporativos de larga escala. Aprimorar funcionalidades de servidores Web. Fornecer aplicativos para dispositivos de consumo popular (telefones celulares etc.)

2005 by Pearson Education do Brasil

1.4 Bibliotecas de classe do Java


Programas Java
Consistem em partes chamadas classes, as quais incluem mtodos que realizam tarefas e retornam informaes ao concluir. Programadores podem criar classes e mtodos para construir programas Java.

O Java oferece bibliotecas de classe


Conhecidas como Java APIs (Application Programming Interfaces) ou APIs do Java.

2005 by Pearson Education do Brasil

1.5 Ambiente de desenvolvimento Java tpico


Programas Java normalmente passam por cinco fases:
Edio O programador escreve programa (e armazena o programa em disco). Compilao O compilador cria bytecodes a partir do programa. Carga O carregador de classe armazena bytecodes na memria. Verificao O verificador de bytecodes confirma que os bytecodes no violam restries de segurana. Execuo A JVM traduz bytecodes em linguagem de mquina.

2005 by Pearson Education do Brasil

Figura 1.1

| Ambiente de desenvolvimento Java tpico.


2005 by Pearson Education do Brasil

2.1 Introduo
Programao de aplicativo Java
Exibir mensagens. Obter informaes do usurio. Clculos aritmticos. Fundamentos de tomada de deciso.

2005 by Pearson Education do Brasil

1 2 3 4 5 6 7 8 9 10 11 12

// Fig. 2.1: Welcome1.java // Programa de impresso de texto.

Resumo

public class Welcome1 {

Welcome1.java
// mtodo main inicia a execuo do aplicativo Java public static void main( String args[] ) { System.out.println( "Welcome to Java Programming!" );

} // fim do mtodo main

13 } // fim da classe Welcome1

Welcome to Java Programming!

2005 by Pearson Education do Brasil

public class Welcome1

Identificador Java
Srie de caracteres consistindo em letras, dgitos, sublinhados (_S ) e sinais de cifro ($r ) . No inicia com um dgito, no tem nenhum espao. Exemplos: cWelcome1, $value, _value, button7t. 7button no vlido. O Java diferencia letras maisculas de minsculas (o uso de letras maisculas ou minsculas importa), e a1 e A1 so diferentes.

Nos captulos 2 a 7, utilize a classe public.


Certos detalhes no so importantes agora. Simulam certos recursos, discutidos mais tarde.

2005 by Pearson Education do Brasil

Boa prtica de programao

Por conveno, sempre inicie o identificador do nome de uma classe com uma letra maiscula e inicie cada palavra subseqente no identificador com uma letra maiscula. Programadores em Java sabem que tais identificadores normalmente representam classes Java; portanto, nomear suas classes dessa maneira torna seus programas mais legveis.
2005 by Pearson Education do Brasil

Boa prtica de programao 2.5

Recue o corpo inteiro de cada declarao de classe por um nvel de recuo entre a chave esquerda, {, e a chave direita, }, que delimitam o corpo da classe. Esse formato enfatiza a estrutura da declarao de classe e torna mais fcil sua leitura.

2005 by Pearson Education do Brasil

// Fig. 2.4: Welcome3.java // Imprimindo mltiplas linhas de texto com uma nica instruo.

3 4

Resumo

public class Welcome3 {

6 7 8 9 1 11 1

// mtodo principal inicia a execuo do aplicativo Java public static void main( String args[] ) { System.out.println( "Welcome\nto\nJava\nProgramming!" );

} // fim do mtodo main

13 } // fim da classe Welcome3

Welcome to Java Programming!

Note como gerada a sada de uma nova linha para cada seqncia de escape \n.

2005 by Pearson Education do Brasil

Figura 2.5 | Algumas seqncias

de escape comuns.
Seqncia de escape
\n \t \r

Descri

Nova linha. osiciona o cursor de tela no incio da prxima linha. Tabulao horizontal. Move o cursor de tela para a prxima parada de tabulao. Retorno de carro. osiciona o cursor da tela no incio da linha atual no avana para a prxima linha. Qualquer sada de caracteres depois do retorno de carro sobrescreve a sada de caracteres anteriormente gerados na linha atual. Barras invertidas. Utilizadas para imprimir um caractere de barra invertida. Aspas duplas. Utilizadas para imprimir um caractere de aspas duplas. or exemplo, System.out.println( "\"entre aspas \"" ); exibe "in quotes"

\\ \"

2005 by Pearson Education do Brasil

2.4 Exibindo texto com printf


System.out.printf:
Novo recurso do J2SE 5.0. Exibe dados formatados.
9 10 System.out.printf( "%s\n%s\n", "Welcome to", "Java Programming!" );

String de formato:
Texto fixo. Especificador de formato marcador de lugar para um valor. Especificador de formato %s marcador de lugar para uma string.

2005 by Pearson Education do Brasil

// Fig. 2.6: Welcome4.java // Imprimindo mltiplas linhas em uma caixa de dilogo.

Resumo

3 4

public class Welcome4 {

6 7 8 9 1 11 1 13

// mtodo main inicia a execuo do aplicativo Java public static void main( String args[] ) { System.out.printf( "%s\n%s\n", "Welcome to", "Java Programming!" );

tem.out.printf exibe dados formatados.

} // fim do mtodo main

14 } // fim da classe Welcome4

Welcome to Java Programming!

2005 by Pearson Education do Brasil

2.5 Outros aplicativos Java: Adicionando inteiros


Prximo programa:
Utilize Scanner para ler dois inteiros fornecidos pelo usurio. Utilize printf para exibir a soma de dois valores. Utilize pacotes.

2005 by Pearson Education do Brasil

// Fig. 2.7: Addition.java


2

// Programa de adio que exibe a soma de dois nmeros. import java.util.Scanner; //

Resumo

programa utiliza a classe Scanner

public class Addition {

A declarao import importa a classe Scanner do pacote java.util.

// mtodo main inicia a execuo do aplicativo Java public static void main( String args[] ) {
0

// cria Scanner para obter entrada da janela de comando Scanner input = new Scanner( System.in );

int number1; // primeiro nmero a somar int number2; // segundo nmero a somar
5

int sum; // soma de number1 e number2

Declara e inicializa a varivel input, que um Scanner. Declara as variveis number1, number2 e sum.

System.out.print( "Enter first integer: " ); // prompt number1 = input.nextInt(); // l o primeiro nmero fornecido pelo usurio

L um inteiro fornecido pelo usurio e o atribui a number1.

2005 by Pearson Education do Brasil

20 21 22 23 24 25 26 27 28

System.out.print( "Enter second integer: " ); // prompt

Resumo

number2 = input.nextInt(); // l segundo nmero fornecido pelo usurio

sum = number1 + number2; // soma os nmeros

L um inteiro fornecido pelo usurio e o atribui a number2. Calcula a soma das variveis number1 e number2; atribui o resultado a sum. Exibe a soma utilizando sada formatada.

System.out.printf( "Sum is %d\n", sum ); // exibe a soma

} // fim do mtodo main

29 } // fim da classe Addition

Enter first integer: 45 Enter second integer: 72 Sum is 117

Dois inteiros inseridos pelo usurio.

2005 by Pearson Education do Brasil

2.5 Outros aplicativos Java: Adicionando inteiros (Continuao)


13 14 15

Declara as variveis number1, number2 e sum do tipo int:


int armazena valores inteiros: isto , 0, -4, 97. Os tipos float e double podem armazenar nmeros decimais. O tipo char pode armazenar um nico caractere: isto , x, $, \n, 7. int, float, double e char so tipos primitivos.

int number1; // primeiro nmero a somar int number2; // segundo nmero a somar int sum; // soma de number1 e number2

possvel adicionar comentrios para descrever o propsito das variveis.


int number1, // primeiro nmero a somar number2, // segundo nmero a somar sum; // soma de number1 e number2

possvel declarar mltiplas variveis do mesmo tipo em uma declarao. Utilize uma lista separada por vrgulas.

2005 by Pearson Education do Brasil

2.6 Conceitos de memria Variveis:


Cada varivel tem um nome, um tipo, um tamanho e um valor.
O nome corresponde posio na memria.

Quando o novo valor colocado numa varivel, ele substitui (e destri) o valor anterior. Ler variveis na memria no as modifica.

2005 by Pearson Education do Brasil

Figura 2.8 | Posio da memria

mostrando o nome e o valor da varivel number1.

2005 by Pearson Education do Brasil

Figura 2.9 | Posies da memria

depois de armazenar valores para number1 e number2.

2005 by Pearson Education do Brasil

Figura. 2.10 | Posies da memria

depois de calcular e armazenar a soma de number1 e number2.


2005 by Pearson Education do Brasil

2.7 Aritmtica
Clculos aritmticos utilizados na maioria dos programas:
Utilizao:
* para multiplicao / para diviso % para resto +, -

A diviso de inteiros trunca o resto:


7 / 5 avaliado como 1

O operador de resto (ou mdulo) % retorna o resto:


7 % 5 avaliado como 2

2005 by Pearson Education do Brasil

EFz1

Figura 2.11 | Operadores aritmticos.


Opera a a
Adio Subtrao Multiplicao Diviso Resto

Operador aritmtico
+ * / %

press o alg rica


f+7 pc bm x / y or r mod s or x y

press o a a
f + 7 p - c b * m x / y r % s

2005 by Pearson Education do Brasil

Slide 26 EFz1 OK
Edson Furmankiewicz, 10/21/2005

2.7 Aritmtica (Continuao)


Precedncia de operadores:
Alguns operadores aritmticos atuam antes de outros (isto , a multiplicao ocorre antes da adio).
Utilize parnteses quando necessrio.

Exemplo: Encontre a mdia de trs variveis a, b e c.


No utilize: a + b + c / 3 Utilize: ( a + b + c ) / 3

2005 by Pearson Education do Brasil

Figura 2.12 | Precedncia de

operadores aritmticos.
Operador(es) Operao(es)
* Multiplicao Diviso % + esto Adio ubtrao

Ordem de avaliao (precedncia)


Avaliado primeiro. e houver vrios operadores desse tipo, eles so avaliados da esquerda para a direita. Avaliado em seguida. e houver vrios operadores desse tipo, eles so avaliados da esquerda para a direita.

2005 by Pearson Education do Brasil

Figura 2.13 | Ordem em que um polinmio de segundo grau avaliado.

2005 by Pearson Education do Brasil

2.8 Tomada de deciso: Operadores de igualdade e operadores relacionais


Condio:
Uma expresso pode ser true ou false.

instruo if:
Verso simples nesta seo; mais detalhes posteriormente. Se a condio true, ento o corpo da instruo if executado. O controle sempre retomado aps a instruo if. Condies em instrues if podem ser formadas utilizando operadores de igualdade ou relacionais (prximo slide).

2005 by Pearson Education do Brasil

Figura 2.14 | Operadores de igualdade

e operadores relacionais.
Operador alg rico Operador de e plo de ignificado da de igualdade ou igualdade ou condi o no condi o no a a relacional padr o relacional a a a a
Operadores de igualdade ! { Operadores relacionais "  u 

== != > < >= <=

x == y x != y x x x x > y < y >= y <= y

x igual a y x no igual a y x maior que y x menor que y x maior que ou igual a y x menor que ou igual a y

2005 by Pearson Education do Brasil

1 3 4

// Fig. 2.15: Comparison.java // Compara inteiros utilizando instrues if, operadores relacionais // e operadores de igualdade. import java.util.Scanner; // programa utiliza a classe Scanner

Resumo

6 public class Comparison 7 { 8 // mtodo main inicia a execuo do aplicativo Java 9 public static void main( String args[] ) 1 { 11 // cria Scanner para obter entrada a partir da janela de comando 1 Scanner input = new Scanner( System.in ); 13 14 int number1; // primeiro nmero a comparar 1 int number2; // segundo nmero a comparar 16 17 System.out.print( "Enter first integer: " ); // prompt 18 number1 = input.nextInt(); // l primeiro o nmero fornecido pelo usurio 19 System.out.print( "Enter second integer: " ); // prompt 1 number2 = input.nextInt(); // l o segundo nmero fornecido pelo usurio 3 4 6 7 8 9 3

if ( number1 == number2 ) System.out.printf( "%d == %d\n",

Testa quanto igualdade, exibe o resultado number1, number2 ); utilizando printf. Compara dois nmeros operador relacional <.

if ( number1 != number2 ) System.out.printf( "%d != %d\n", number1, number2 ); if ( number1 < number2 ) System.out.printf( "%d < %d\n", number1, utilizando o number2 );

2005 by Pearson Education do Brasil

31 32 33 34 35 36 37 38 39 40 41 42

Resumo

if ( number1 > number2 ) System.out.printf( "%d > %d\n", number1, number2 ); if ( number1 <= number2 ) System.out.printf( "%d <= %d\n",

Compara dois nmeros utilizando os operadores number1, number2 ); relacionais >, <= and >=.

Comparison.java
if ( number1 >= number2 ) } // fim do mtodo main

System.out.printf( "%d >= %d\n", number1, number2 );

(2 de 2)

43 } // fim da classe Comparison Enter first integer: 777 Enter second integer: 777 777 == 777 777 <= 777 777 >= 777 Enter first integer: 1000 Enter second integer: 2000 1000 != 2000 1000 < 2000 1000 <= 2000

ada do programa

Enter first integer: 2000 Enter second integer: 1000 2000 != 1000 2000 > 1000 2000 >= 1000

2005 by Pearson Education do Brasil

Figura 2.16 | Precedncia e

associatividade das operaes discutidas.


peradores
* + < == = / <= != > >= %

ssociatividade
da esquerda para a direita da esquerda para a direita da esquerda para a direita da esquerda para a direita da direita para a esquerda

ipo
multiplicativo aditivo relacional igualdade atribuio

2005 by Pearson Education do Brasil

Potrebbero piacerti anche