Vous êtes sur la page 1sur 20

08/06/2009

1 Introduo linguagem JAVA


Aula 02 Fundamentos da Linguagem

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Sumrio
2

 Comentrios
 Blocos e Sentenas
 Identificadores
 Literais
 Declarao, inicializao e atribuio
 Palavras reservadas
 Tipos primitivos e String
 Operadores
 Converses
Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

1
08/06/2009

Comentrios
3

 Existem trs tipos possveis de comentrios

// Comentrio de uma linha

/* Comentrio de
vrias linhas */

/** Comentrio de documentao */

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Comentrios
4

 Comentrios de documentao podem ser transformados


em pginas HTML (Javadoc)

/** Classe XYZ que ter a funo de


* @author Andre Negreiros
* @version 1.0, 20/05/2009
*/

Mais informaes:
http://java.sun.com/j2se/javadoc

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

2
08/06/2009

Blocos e Sentenas
5

 Uma sentena (statement) uma linha de cdigo


terminada por um ;
total = a + b +c;

 Um bloco de cdigo delimitado por chaves


{
total = a + b +c;
}

Obs: Usar a mesma identao em todo o cdigo.

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Identificadores
6

 So nomes dados a classes, mtodos, variveis,


interfaces e objetos
 Devem comear por letra, _ ou $ seguido de letras ou
nmeros
 So case sensitive: number Number
 Convenes:
 Variveis, mtodos e objetos: minhaVarivel
 Classes e Interfaces: MinhaClasse

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

3
08/06/2009

Identificadores
7

 Exemplos:
 number, Number, sum_$, $$_100, mal, saldoTotal
 Identificadores ilegais:
 48casa, all/clear, navio-escola,

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Literais
8

 Denotam um valor constante


 Podem ser numricos, caracteres, booleanos ou
strings:
 1
 a

 true

 tiago

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

4
08/06/2009

Declarao, inicializao e atribuio


9

 Declarando Variveis:
<TIPO> <VARIVEL>;
Exemplos: char a, b, c;
double area;
 Declarando e Iniciando Variveis:
<TIPO> <VARIAVEL> = <EXPRESSO>;
Exemplos: int i = 10;
int i = 10, j=100;
long big = 12341234L;
Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Declarao, inicializao e atribuio


10

 Atribuio:
<IDENTIFICADOR> = <EXPRESSO>;
Exemplos:
idade = 23;
sexo = M;
tem_filho = false;
j = k = 5;

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

5
08/06/2009

Palavras reservadas
11

 Sinnimos:
 Palavras-chave ou Keywords;

 Definio:
 So identificadores reservados da linguagem;

 No podem ser usadas para denotar outras


entidades (classes, mtodos ou variveis);

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Palavras reservadas
12

 A linguagem java possui 51 palavras reservadas:


abstract const final instanceof private switch void

boolean continue finally int protected synchronized volatile

break default float interface public this while

byte do for long return throw case

double goto native short throws catch else

if new static transient char extends null

strictftp true class false import implements super

try package

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

6
08/06/2009

Tipos
13

 Tipos representam um valor, uma coleo de


valores ou coleo de outros tipos. Podem ser:
 Tipos bsicos ou primitivos: quando representam
unidades indivisveis de informao (de tamanho fixo).
 Tipos complexos: quando representam informaes que
podem ser decompostas em tipos menores (primitivos
ou outros tipos complexos).

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Tipos primitivos
14

 Tm tamanho fixo.
 Tm sempre um valor default.
 Armazenados na pilha (acesso rpido).
 No so objetos.

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

7
08/06/2009

Tipos primitivos
15

 Tipos inteiros:
 byte...8 bits

 short..16 bits

 Int..32 bits

 long 64 bits
 Tipos Ponto-Flutuante (decimais):
 float..32 bits

 Double...64 bits

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Tipos primitivos
16

 Tipo booleano:
 boolean...1 bit

 Tipo Caractere:
 char...............16 bits

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

8
08/06/2009

Tipos primitivos
17

 Inteiros:
 Sorepresentados como nmeros com sinal e com
complemento de 2.
Exemplos: int = -215;
int max = 0x7fffffff; //(hexadecimal)
int min = 0450; //(octal)
long fone = 854581947L;
Tipo de Dado Largura (bits) Valor mnimo Valor mximo
byte 8 -27 (-128) 27-1 (+127)
short 16 -215 (-32768) 215-1 (+32767)
int 32 -231 (-2147483648) 231-1 (+2147483647)
long 64 -263 (-9223372036854775808L) 263-1 (+9223372036854775807L)

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Tipos primitivos
18

 Caracteres:
O tipo de dado char engloba todos os 65.536
caracteres do conjunto de caracteres unicode;
 Os 128 primeiros caracteres: so os mesmos do
padro ASCII.
 Exemplos: char a = 'a; // ok
char b = '@'; // ok
char c = '\u004E'; // refere-se a letra N
Tipo de Dado Largura (bits) Valor mnimo Valor mximo
char 16 0x0 0xffff

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

9
08/06/2009

Tipos primitivos
19

 Ponto-Flutuante:
 Zeropode ser representado por 0.0 ou -0.0;
 Exemplos: double a = 2.89
float b = 3.21f
A tabela abaixo mostra os valores positivos, mas o
mesmo se aplica aos nmeros negativos, bastando
colocar o sinal - antes do nmero.

Tipo de Dado Largura (bits) Valor mnimo Valor mximo


float 32 1.40129846432481707e-45 3.40282346638528860e+34
double 64 4.94065645841246544e-324 1.79769313486231570e+308

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Tipos primitivos
20

 Booleanos:
 Usado para representar os valores lgicos
verdadeiro e falso;
 Valores booleanos podem ser retornados de
operadores lgicos, condicionais e relacionais;
 Seus valores no podem ser convertidos em valores de
outros tipos de dados primitivos.
 Exemplo: boolean b = true;

Tipo de Dado Largura (bits) Valor/literal verdadeiro Valo/literal falso


boolean 1 true false

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

10
08/06/2009

Strings
21

 Em Java, cadeias de caracteres (String) no so


tipos primitivos, so objetos
 Literal: qualquer contedo entre aspas duplas
 Concatenao: HelIo + World = HelloWorld;
 Converso Implcita: HelIo + 2001 =
Hello2001;
 Comparao de Strings: a.equals(b);
 Tamanho de uma String: a.length();

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

22 Exerccios
Lista de Exerccios 01

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

11
08/06/2009

Estrutura de uma Classe


23

public class NomeDaClasse{

//Mtodo que a JVM executa (ponto de entrada)


public static void main(String[] args){
//Cdigo que ser executado
}

//Outros mtodos
}

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Mtodo main incio de tudo


24

 Todo cdigo de uma classe java executvel comea


no mtodo main.
 O que podemos fazer com o mtodo main?
 Executar instrues
 Executar instrues repetidamente

 Testar coisas

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

12
08/06/2009

Exerccio 01
25

 Nosso primeiro programa


 Crieum programa que imprima no console o texto Al
Mundo!

No se assustem esse nosso primeiro contato direto


com a linguagem!

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Exerccio 02
26

 Escreva um programa que declare, inicialize e


imprima as seguintes variveis:
 Inteiro i de 32 bits com valor 1
 Inteiro j de 64 bits com valor 2
 Ponto-flutuante p de 32 bits com valor 20.0
 Ponto-flutuante q de 64 bits com valor 2
 Booleano b com valor verdadeiro
 Caracter c com valor k

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

13
08/06/2009

Operadores
27

 Operadores so smbolos especiais utilizados para


realizar operaes matemticas (aritmticas),
atribuies, comparaes e operaes lgicas.

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Operadores aritmticos
28

 Realizam operaes matemticas bsicas


 So eles:
 Adio: +
 Subtrao -
 Multiplicao *
 Diviso /
 Resto da diviso %

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

14
08/06/2009

Operadores unrios
29

 Sinais de + e indicam se um valor positivo ou


negativo
 Caso no seja expresso, o padro positivo

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Incremento e Decremento
30

 So operadores que nos permitem incrementar ou


decrementar a varivel em uma unidade
 Podem ser usados antes ou depois da varivel:
 Antes: incrementado/decrementado na mesma linha de
cdigo
 Depois: incrementado/decrementado na prxima
instruo do cdigo
 So eles: ++ e
 Exemplo: a++ ; b ;
Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

15
08/06/2009

Operadores de atribuio
31

 Exceto para o operador '=', estes operadores so


simplesmente uma notao compacta para uma
operao aritmtica seguida da atribuio.
 So eles: =, +=, -=, *=, /=, %=
 Exemplo: x+=1; o mesmo que x = x + 1;

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Operadores relacionais
32

 Utilizados para comparar variveis quanto a


igualdade, diferena, maior ou menor
 '>': Maior que
 '<': Menor que

 '==': Iguais

 '!=': Diferentes

 '>=': Maior ou igual que

 '<=': Menor ou igual que

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

16
08/06/2009

Operadores lgicos
33

 Realizam operaes lgicas que sempre resultaro


em um valor booleano
 '&&' : retorna true se ambos operandos forem true
 '||' : retorna true se algum dos operandos for true

 '!' : nega o operando

 '&' : retorna true se ambos operandos forem true,


avaliando ambos
 '|' : retorna true se um dos operandos for true,
avaliando ambos

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Precedncia
34

Ps-fixados [ ] . (parmetros) x++ x--


Pr-fixados Unrios ++x --x +x -x ~ !
Criao e Type Cast new (type)
Multiplicao * / %
Adio + -
Rotao (shift) << >> >>>
Relacionais < <= > >= instanceof
Igualdade == !=
AND binrio &
XOR binrio ^
OR binrio |
AND lgico &&
OR lgico ||
Condicional ?:
Atribuio = += -= *= /= %= <<= >>= >>>= &= ^= |=

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

17
08/06/2009

Precedncia (Exemplos)
35

 2 + 3 * 4 equivalente a 2 + (3 * 4)
 1 + 2 3 equivalente a (1 + 2) 3
 - - 4 equivalente a - (- 4)
 if ( x > y & a < b ) equivalente a if ( (x > y) & (a < b) )

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Converses
36

 Existem dois tipos de converses:


 Implcitas: Feitas pelo compilador, transparentes para o
usurio
 Normalmente acontece quando colocamos uma varivel
de capacidade menor que em outra com capacidade
maior.
 Explicitas ou Casting: O programador dever dizer ao
compilador que quer realmente converter os tipos
 Acontece quando tentamos transformar uma varivel
maior em uma outra de preciso menor
 Erro de perda de preciso.

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

18
08/06/2009

Converses
37

 Casting (Converso Explcta)


 Se existe perda de preciso em uma atribuio
necessrio fazer uma converso explicitamente:
 long longValue = 99L;
 int intValue2 = (int) longValue; //OK!
 int intValue1 = longValue; //ERRO!
 Java tambm pode promover o tipo de uma expresso
automaticamente para um tipo maior.
 long longValue;
 int intValue = 10;
 LongValue = intValue;

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

38 Exerccios
Lista de Exerccios 02

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

19
08/06/2009

Exerccio 01
39

 Ler uma temperatura em graus Celsius e apresent-


la convertida em Fahrenheit. A frmula de
converso : F = (9*C +160)/5.

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

Exerccio 02
40

 Implementar um programa para calcular a rea de


um trapzio, onde:
h = altura, b = base menor, bMaior = base maior
 area = (h * (b + bMaior)) / 2

 Voc deve ler do teclado os valores da altura e


das duas bases e imprimir a rea calculada.

Introduo Linguagem JAVA - Prof. Andr Negreiros FATENE - 2009

20