Escolar Documentos
Profissional Documentos
Cultura Documentos
Arquivo-Fonte
public class Conta {
Arquivo de Classe
}
Classe
Método 1
instrução
public class Conta {
void depositar() {
Método 1
instrução 1 }
instrução 2 }
Método
Estrutura de Código do Java
instrução 1;
Método 1
instrução 2;
instrução ...
}
Método 1 }
Instruções
instrução 1
instrução 2
Alô, mundo!
Um comentário /*
de bloco Este é um programa Java Simples
Chame este arquivo de Programa1.java
*/
Insere a definição de class Programa1{
uma nova classe
Oi, Java!
O método main em detalhes
public static void main(String[] args)
Vetor de strings
Usado quando o método que recebe os
não retorna valor. argumentos
passados ao
programa.
Indica que o método deve
ser compartilhado por todos
os objetos criados a partir Método principal.
desta classe Obrigatório em
aplicações, pois indica
Significa que a classe ao compilador o início
ou método é acessível da execução da linha
externamente a esta
classe.
Saída do Console
System.out.println("Oi, Java!");
Nomes de Métodos
São “verbos” e iniciam com letras minúsculas e seguem a notação
camelo.
Exemplo: void alteraNota()
Como Compilar e Executar
Compilação Execução
javac java
A partir do diretório local A partir do diretório local
javac Nome.java java Nome
Vai produzir Arquivos .class Nome = arquivo .class que
separados para cada classe contém o método main()
no arquivo Nome.java
Coloca os arquivos no diretório
Executa a partir de main()
corrente. Ou com argumentos
Java Nome arg1 arg2
O que pode dar errado?
Erros de Sintaxe
Java é case-sensitive
Esquecer “ ; ”
Escrever palavras reservadas com
letras maiúsculas.
Esquecer de abrir e fechar { }
Exemplo
Programa1.java:8: ‘;’ expected
public static void main(String[] args)
^
Programa1.java:11: class, interface, or enum
expected
}
^
O que pode dar errado?
Erros de Execução
Se você declarar uma classe como X, compilá-la e depois
tentar usá-la como x minúsculo, o Java te avisa:
Exception in thread "main"
java.lang.NoClassDefFoundError: X (wrong name: x)
Oi, Java!
Mais um exemplo
Para escrever um número, basta escrever [string] + n
O número é convertido em
String e, em seguida, as
strings são concatenadas
Mais um exemplo
Para escrever um número, basta escrever [string] + n
Numero: 10
Mais um exemplo
public class Programa4 {
var1 = 1024;
System.out.println("var1: " + var1);
var2 = var1/2;
System.out.println(var2);
}
}
var1: 1024
512
Mais um exemplo
public class Programa5{
Soma: 105
Mais um exemplo
public class Programa5{
E se quisermos exibir a
soma?
Mais um exemplo
public class Programa5{
Soma: 15
Mais um exemplo
public class Programa5{
8 bits 32 bits
boolean int
byte float
16 bits 64 bits
char long
short double
Variáveis Primitivas
Declaração de Variáveis
Reserva-se na memória um espaço suficiente para guardar um valor
do tipo declarado
boolean resultado;
char opcao = 's';
double notaDoAluno;
Escopo de Variáveis
Quando abrimos um novo bloco com as chaves, as variáveis
declaradas ali dentro só valem até o fim daquele bloco
int x = 3;
int y = 25;
boolean resultado = x == y;
System.out.println(resultado);
}
}
false
Exemplos
public class Programa7{
int x = 3;
int y = 25;
int resultado = y % x;
System.out.println(resultado);
}
}
1
Exemplos
public class Programa8{
int x = 3;
int y = 25;
int resultado = y % x++;
System.out.println(resultado);
System.out.println(x);
}
}
1
4
Exemplos
public class Programa8{
int x = 3;
int y = 25;
int resultado = --y % x;
System.out.println(resultado);
System.out.println(y);
}
}
0
24
Exemplos
public class Programa9{
int x = 3;
int y = 25;
boolean resultado = x > 4 & x != y;
System.out.println(resultado);
}
}
false
Exemplos
public class Programa10{
int x = 3;
int y = 25;
boolean resultado = !(x > 4) & x != y;
System.out.println(resultado);
}
}
true
Conversão de Tipos
Algumas vezes é necessário converter um valor de um tipo
primitivo em um valor de outro tipo primitivo
Casting ou Coerção
▪ Caso 01 tipo maior para tipo menor: o casting deve ser explícito
▪ Caso 02 tipo menor para tipo maior: casting automático
Conversão de Tipos
double d = 3.1415;
int i = d;
double
int
// não compila 3.1415
d i
double d = 5;
int i = d;
double
int
// não compila 5.00
d i
Conversão de Tipos
double d = 3.1415;
int i = (int) d;
double
int
// casting explícito 3.1415 3
d i
double d = 5;
int i = (int) d;
double
int
// casting explícito 5.00 5
d i
Conversão de Tipos
int i = 5;
double d = i;
// casting automático
double
int
5 5.00
i d
byte a = 4;
int b = a;
// casting automático byte
int
5 5
a
b
Conversão de Tipos
long x = 1000;
int i = x;
long
int
// não compila 1000
x i
long x = 1000;
int i = (int) x;
long
int
1000 1000
// casting explícito
x i
Conversão de tipos
Casos não comuns de casting e atribuição
float x = 0.0;
Solução
float x = 0.0f;
Conversão de tipos
Solução
float x = 0.0f;
Conversão de tipos
A letra L (maiúscula ou minúscula), indica que o literal deve ser
tratado como long
long x = 0.0L;
Outro Exemplo
double x = 5;
float y = 3;
float z = (float) x + y;
O valor da variável x é convertido
para float e, então, é somado
com o valor da variável y.
Conversão de tipos
int x = 5; x == 5
int y = 3; y == 3
double z = x / y; z == 1.0
int x = 5; x == 5
int y = 3; y == 3
double z = (double) x / y; z == 1.666
int x = 5; x == 5
int y = 3; y == 3
double z = (double) (x / y); z == 1.0
Sequência Descrição
\’ Aspas Simples
\\ Barra Invertida
\n Nova Linha
\t Tabulação Horizontal
Sequências de Escape
public class Programa4 {
}
}
“Eu
gosto
de Java”
Definição de Constantes
Quando um item de dado não mudar durante a execução de um
programa, é boa prática definir este item como constante
A definição de constantes usa a mesma sintaxe que a declaração de
variáveis, sendo precedido pela palavra chave final
Controle Iteração
if ... else
Instruções Instruções
caso TRUE caso FALSE
if ... else
Sintaxe
if (<condição lógica>){
<instruções>;
}
else {
<instruções>;
}
int number = 0;
UM ERRO COMUM if (number){
NA UTILIZAÇÃO //instruções;
A condição if só avalia um }
valor lógico
switch
true Instruções
= valor 1 break;
Bloco 1
false
true Instruções
= valor 2 break;
Bloco 1
false
Bloco Default
switch
SINTAXE
switch (OP){
case valor1:
<instruções>;
break; OP é uma variável inteira,
case valor2: char ou String
<instruções>; Cuidado para não esquecer
break; de escrever a instrução
default: break
<instruções>;
}
while
false
while
Sintaxe
while (<condição lógica>){
<instruções>;
}
UM ERRO COMUM
NA UTILIZAÇÃO
while (true) {
System.out.println ("Loop Infinito");
}
do ... while
Instrução
Condição true
Lógica
false
do ... while
Sintaxe
do {
<instruções>;
} while(<condição lógica>);
UM ERRO COMUM
NA UTILIZAÇÃO
Esquecer o ponto vírgula no
final do bloco
for
Inicializa variável de
controle
true Incrementa
Condição
instruções variável de
Lógica controle
false
for
Sintaxe
for (declaração inicial; expressão lógica; incremento){
<instruções>;
}
ERROS COMUNS
NA UTILIZAÇÃO
Utilizar vírgulas em vez de ponto-e-vírgulas obrigatórios no
cabeçalho do for.
Não utilizar o operador relacional adequado na condição
de continuação do laço
Controle de Loops
Instrução break
Interrompe a execução do loop