08/06/2009

1 Introdução à linguagem JAVA
Aula 02 – Fundamentos da Linguagem

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

Sumário
2

 Comentários
 Blocos e Sentenças
 Identificadores
 Literais
 Declaração, inicialização e atribuição
 Palavras reservadas
 Tipos primitivos e String
 Operadores
 Conversões
Introdução à Linguagem JAVA - Prof. André Negreiros FATENE - 2009

1

08/06/2009

Comentários
3

 Existem três tipos possíveis de comentários

// Comentário de uma linha

/* Comentário de
várias linhas */

/** Comentário de documentação */

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

Comentários
4

 Comentários de documentação podem ser transformados
em páginas HTML (Javadoc)

/** Classe XYZ que terá a função de …
* @author Andre Negreiros
* @version 1.0, 20/05/2009
*/

Mais informações:
http://java.sun.com/j2se/javadoc

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

2

interfaces e objetos  Devem começar por letra.Prof.Prof. métodos e objetos: minhaVariável  Classes e Interfaces: MinhaClasse Introdução à Linguagem JAVA .  Um bloco de código é delimitado por chaves { total = a + b +c. 08/06/2009 Blocos e Sentenças 5  Uma sentença (statement) é uma linha de código terminada por um “. André Negreiros FATENE .2009 Identificadores 6  São nomes dados a classes. } Obs: Usar a mesma identação em todo o código.” total = a + b +c. variáveis. _ ou $ seguido de letras ou números  São “case sensitive”: number ≠ Number  Convenções:  Variáveis. André Negreiros FATENE . métodos. Introdução à Linguagem JAVA .2009 3 .

caracteres.Prof.Prof.2009 Literais 8  Denotam um valor constante  Podem ser numéricos. saldoTotal…  Identificadores ilegais:  48casa. 08/06/2009 Identificadores 7  Exemplos:  number. Number. sum_$. navio-escola. André Negreiros FATENE . André Negreiros FATENE . $$_100. mal. all/clear.2009 4 .… Introdução à Linguagem JAVA . booleanos ou strings:  1  ‘a’  true  “tiago” Introdução à Linguagem JAVA .

double area.Prof. Exemplos: char a. inicialização e atribuição 9  Declarando Variáveis: <TIPO> <VARIÁVEL>. c. 08/06/2009 Declaração. sexo = “M”. André Negreiros FATENE .  Declarando e Iniciando Variáveis: <TIPO> <VARIAVEL> = <EXPRESSÃO>. j = k = 5. Introdução à Linguagem JAVA . Introdução à Linguagem JAVA . Exemplos: idade = 23. Exemplos: int i = 10. tem_filho = false.2009 Declaração.Prof.2009 5 . inicialização e atribuição 10  Atribuição: <IDENTIFICADOR> = <EXPRESSÃO>. int i = 10. b. long big = 12341234L. André Negreiros FATENE . j=100.

Prof.  Não podem ser usadas para denotar outras entidades (classes. Introdução à Linguagem JAVA .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 Introdução à Linguagem JAVA .  Definição:  São identificadores reservados da linguagem.Prof.2009 6 . 08/06/2009 Palavras reservadas 11  Sinônimos:  Palavras-chave ou Keywords. André Negreiros FATENE . André Negreiros FATENE . métodos ou variáveis).

Prof. 08/06/2009 Tipos 13  Tipos representam um valor. André Negreiros FATENE . Podem ser:  Tipos básicos ou primitivos: quando representam unidades indivisíveis de informação (de tamanho fixo).Prof. uma coleção de valores ou coleção de outros tipos.2009 7 .2009 Tipos primitivos 14  Têm tamanho fixo.  Têm sempre um valor default. André Negreiros FATENE . Introdução à Linguagem JAVA .  Não são objetos. Introdução à Linguagem JAVA .  Armazenados na pilha (acesso rápido).  Tipos complexos: quando representam informações que podem ser decompostas em tipos “menores” (primitivos ou outros tipos complexos).

....32 bits  long 64 bits  Tipos Ponto-Flutuante (decimais):  float….8 bits  short….2009 Tipos primitivos 16  Tipo booleano:  boolean…....1 bit  Tipo Caractere:  char.32 bits  Double.....16 bits Introdução à Linguagem JAVA ..16 bits  Int……....Prof. André Negreiros FATENE . André Negreiros FATENE .. 08/06/2009 Tipos primitivos 15  Tipos inteiros:  byte…...2009 8 .64 bits Introdução à Linguagem JAVA .Prof......

Tipo de Dado Largura (bits) Valor mínimo Valor máximo 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) Introdução à Linguagem JAVA .Prof. // refere-se a letra N Tipo de Dado Largura (bits) Valor mínimo Valor máximo char 16 0x0 0xffff Introdução à Linguagem JAVA . // ok char c = '\u004E'.2009 9 .  Exemplos: char a = 'a‘. //(hexadecimal) int min = 0450.536 caracteres do conjunto de caracteres unicode.  Os 128 primeiros caracteres: são os mesmos do padrão ASCII. 08/06/2009 Tipos primitivos 17  Inteiros:  Sãorepresentados como números com sinal e com complemento de 2. // ok char b = '@'.2009 Tipos primitivos 18  Caracteres: O tipo de dado char engloba todos os 65.Prof. Exemplos: int = -215. int max = 0x7fffffff. André Negreiros FATENE . //(octal) long fone = 854581947L. André Negreiros FATENE .

 Exemplos: double a = 2. condicionais e relacionais.79769313486231570e+308 Introdução à Linguagem JAVA . Tipo de Dado Largura (bits) Valor mínimo Valor máximo float 32 1.  Exemplo: boolean b = true. mas o mesmo se aplica aos números negativos.2009 10 .21f A tabela abaixo mostra os valores positivos.Prof.0. André Negreiros FATENE .0 ou -0.  Valores booleanos podem ser retornados de operadores lógicos.40129846432481707e-45 3.40282346638528860e+34 double 64 4. André Negreiros FATENE .2009 Tipos primitivos 20  Booleanos:  Usado para representar os valores lógicos “verdadeiro” e “falso”. 08/06/2009 Tipos primitivos 19  Ponto-Flutuante:  Zeropode ser representado por 0.  Seus valores não podem ser convertidos em valores de outros tipos de dados primitivos.94065645841246544e-324 1. bastando colocar o sinal “-” antes do número.Prof. Tipo de Dado Largura (bits) Valor/literal verdadeiro Valo/literal falso boolean 1 true false Introdução à Linguagem JAVA .89 float b = 3.

Prof. Introdução à Linguagem JAVA .  Comparação de Strings: a. cadeias de caracteres (String) não são tipos primitivos.Prof.equals(b).2009 11 .2009 22 Exercícios Lista de Exercícios 01 Introdução à Linguagem JAVA .  Conversão Implícita: “HelIo” + 2001 = “Hello2001”.  Tamanho de uma String: a. André Negreiros FATENE . 08/06/2009 Strings 21  Em Java. André Negreiros FATENE .length(). são objetos  Literal: qualquer conteúdo entre aspas duplas  Concatenação: “HelIo” + “World” = “HelloWorld”.

2009 12 .2009 Método main – início de tudo 24  Todo código de uma classe java executável começa no método main. André Negreiros FATENE . 08/06/2009 Estrutura de uma Classe 23 public class NomeDaClasse{ //Método que a JVM executa (ponto de entrada) public static void main(String[] args){ //Código que será executado } //Outros métodos } Introdução à Linguagem JAVA . André Negreiros FATENE .Prof.Prof.  O que podemos fazer com o método main?  Executar instruções  Executar instruções repetidamente  Testar coisas Introdução à Linguagem JAVA .

0  Ponto-flutuante q de 64 bits com valor 2  Booleano b com valor verdadeiro  Caracter c com valor k Introdução à Linguagem JAVA .2009 13 .Prof.Prof. inicialize e imprima as seguintes variáveis:  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. André Negreiros FATENE .2009 Exercício 02 26  Escreva um programa que declare. André Negreiros FATENE . 08/06/2009 Exercício 01 25  Nosso primeiro programa  Crieum programa que imprima no console o texto Alô Mundo! Não se assustem esse é nosso primeiro contato direto com a linguagem! Introdução à Linguagem JAVA .

André Negreiros FATENE . comparações e operações lógicas.2009 Operadores aritméticos 28  Realizam operações matemáticas básicas  São eles:  Adição: +  Subtração -  Multiplicação *  Divisão /  Resto da divisão % Introdução à Linguagem JAVA .Prof. André Negreiros FATENE .2009 14 .Prof. Introdução à Linguagem JAVA . atribuições. 08/06/2009 Operadores 27  Operadores são símbolos especiais utilizados para realizar operações matemáticas (aritméticas).

Prof. b– –.2009 15 . André Negreiros FATENE .2009 Incremento e Decremento 30  São operadores que nos permitem incrementar ou decrementar a variável em uma unidade  Podem ser usados antes ou depois da variável:  Antes: incrementado/decrementado na mesma linha de código  Depois: incrementado/decrementado na próxima instrução do código  São eles: ++ e – –  Exemplo: a++ . André Negreiros FATENE . 08/06/2009 Operadores unários 29  Sinais de + e – indicam se um valor é positivo ou negativo  Caso não seja expresso. o padrão é positivo Introdução à Linguagem JAVA . Introdução à Linguagem JAVA .Prof.

+=. Introdução à Linguagem JAVA . André Negreiros FATENE .  São eles: =. 08/06/2009 Operadores de atribuição 31  Exceto para o operador '='. /=. André Negreiros FATENE . %=  Exemplo: x+=1.2009 16 . estes operadores são simplesmente uma notação compacta para uma operação aritmética seguida da atribuição. *=.2009 Operadores relacionais 32  Utilizados para comparar variáveis quanto a igualdade.Prof. diferença. é o mesmo que x = x + 1.Prof. maior ou menor  '>': Maior que  '<': Menor que  '==': Iguais  '!=': Diferentes  '>=': Maior ou igual que  '<=': Menor ou igual que Introdução à Linguagem JAVA . -=.

(parâmetros) x++ x-- Pré-fixados Unários ++x --x +x -x ~ ! Criação e Type Cast new (type) Multiplicação * / % Adição + - Rotação (shift) << >> >>> Relacionais < <= > >= instanceof Igualdade == != AND binário & XOR binário ^ OR binário | AND lógico && OR lógico || Condicional ?: Atribuição = += -= *= /= %= <<= >>= >>>= &= ^= |= Introdução à Linguagem JAVA . avaliando ambos  '|' : retorna true se um dos operandos for true. 08/06/2009 Operadores lógicos 33  Realizam operações lógicas que sempre resultarão 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. André Negreiros FATENE . avaliando ambos Introdução à Linguagem JAVA .2009 17 . André Negreiros FATENE .Prof.2009 Precedência 34 Pós-fixados [ ] .Prof.

Introdução à Linguagem JAVA . André Negreiros FATENE .(. 08/06/2009 Precedência (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) ) Introdução à Linguagem JAVA .  Explicitas ou Casting: O programador deverá dizer ao compilador que quer realmente converter os tipos  Acontece quando tentamos transformar uma variável maior em uma outra de precisão menor  Erro de perda de precisão.Prof..2009 18 . transparentes para o usuário  Normalmente acontece quando colocamos uma variável de capacidade menor que em outra com capacidade maior. André Negreiros FATENE .2009 Conversões 36  Existem dois tipos de conversões:  Implícitas: Feitas pelo compilador.Prof.

Introdução à Linguagem JAVA . André Negreiros FATENE .  int intValue2 = (int) longValue. 08/06/2009 Conversões 37  Casting (Conversão Explícta)  Se existe perda de precisão em uma atribuição é necessário fazer uma conversão explicitamente:  long longValue = 99L.  LongValue = intValue.2009 19 . //OK!  int intValue1 = longValue.Prof. //ERRO!  Java também pode “promover” o tipo de uma expressão automaticamente para um tipo maior.  int intValue = 10.Prof.  long longValue. André Negreiros FATENE .2009 38 Exercícios Lista de Exercícios 02 Introdução à Linguagem JAVA .

Introdução à Linguagem JAVA .2009 Exercício 02 40  Implementar um programa para calcular a área de um trapézio. Introdução à Linguagem JAVA .Prof. onde: h = altura. 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. b = base menor. André Negreiros FATENE . A fórmula de conversão é: F = (9*C +160)/5. 08/06/2009 Exercício 01 39  Ler uma temperatura em graus Celsius e apresentá- la convertida em Fahrenheit. André Negreiros FATENE .Prof.2009 20 .