Tutorial Java
Aprenda Java do zero, como numa escola: cada linha de código é explicada parte por parte, você vê exatamente o que aparece na tela e pratica num editor aqui mesmo no navegador. O guia ensina o Java 25 LTS, e todas as saídas e mensagens de erro foram conferidas num JDK de verdade. Vale para Linux, Windows e macOS.
Comece pelo Nível 1 ❯Experimente agora
A caixa abaixo é o editor Experimente do guia. Ela tem um programa Java completo, pronto para rodar. Clique em Rodar: o editor confere o código como o compilador do Java faria e mostra o que o programa escreve na tela. Nada do que você fizer aqui mexe no seu computador.
Missão: clique em Rodar e veja o Olá, mundo! aparecer. Depois troque o texto entre as aspas por Estou aprendendo Java! e rode de novo. Cuidado para não apagar as aspas " nem o ; do fim da linha.
public class Main {
public static void main(String[] args) {
System.out.println("Olá, mundo!");
}
}
public class Main {
public static void main(String[] args) {
System.out.println("Estou aprendendo Java!");
}
}
O que aconteceu: o programa tem uma única linha que faz alguma coisa, a do meio, System.out.println("Olá, mundo!");. Ela manda o Java escrever um texto na tela e pular para a linha de baixo. Todo o resto (public class Main, public static void main, as chaves) é a "moldura" que todo programa Java tem. Na aula Olá, Mundo você vai entender cada palavra dessa moldura.
Se você apagou uma aspa ou o ponto e vírgula, viu uma mensagem em inglês com um ^ apontando o erro. Não se assuste: é o compilador ajudando. O guia tem uma aula inteira sobre essas mensagens, Lendo Erros do javac.
O que é este guia
O Java é uma das linguagens de programação mais usadas do mundo. Ela roda nos servidores de bancos e lojas virtuais, em aplicativos Android, em sistemas de governo e até no Minecraft. Quem aprende Java consegue:
- escrever programas que fazem contas, tomam decisões e repetem tarefas;
- organizar programas grandes com classes e objetos, o jeito de pensar que o Java popularizou;
- trabalhar com listas, arquivos, datas e dinheiro usando a enorme biblioteca que vem com o Java;
- entender o código de sistemas profissionais, que muitas vezes são feitos em Java há décadas.
O guia é para quem nunca programou. Ele começa do zero absoluto (o que é um programa? o que é compilar?) e vai até o Java moderno: lambdas, streams, records, threads virtuais, Maven e testes. A aula O que é Java conta a história da linguagem e mostra onde ela é usada.
Como as aulas funcionam
Nenhum código aparece "seco". Toda aula segue o mesmo caminho:
- A ideia primeiro. Antes do código, você entende o problema que ele resolve, com uma comparação do dia a dia.
- Anatomia. Cada pedaço de uma linha nova é separado e explicado: o que é palavra do Java, o que é nome escolhido por você, para que serve cada símbolo.
- A saída real. Você vê exatamente o que aparece na tela, com etiquetas laranja apontando o que importa. Toda saída foi produzida pelo JDK 25 de verdade.
- Experimente. Pelo menos duas caixas por aula para você mudar o código e rodar, muitas com uma missão e um botão para ver a solução.
- Várias formas de fazer. Quase sempre há mais de um caminho, e uma tabela "qual usar" mostra quando escolher cada um.
- Quando dá errado. O código com erro, a mensagem real do compilador (ou da exceção), o que ela quer dizer e como consertar.
- Exercícios e resumo. Perguntas com correção na hora e uma lista curta do que levar da aula.
Exemplo: a anatomia de uma linha
Esta é a linha que você rodou lá em cima, com outro texto. Veja como as aulas desmontam uma linha de código:
System.out.println("Oi");
- System
- Uma classe que já vem com o Java e representa o "sistema" onde o programa roda. Começa com letra maiúscula, e isso importa.
- .out
- A saída padrão do sistema: normalmente, a tela do terminal. O ponto quer dizer "dentro de": o
outque fica dentro deSystem. - .println
- O método (uma ação) que escreve um texto e pula para a próxima linha. O nome vem de print line, "imprimir linha".
- ( )
- Os parênteses levam para o método aquilo que ele deve usar, o argumento.
- "Oi"
- O texto a escrever. As aspas duplas marcam onde o texto começa e termina; elas não aparecem na tela.
- ;
- O ponto e vírgula termina a instrução, como o ponto final de uma frase.
Exemplo: o terminal
Além do editor, as aulas mostram o terminal da máquina fictícia do guia: um computador chamado notebook, da usuária ana, com o JDK 25 instalado. É ali que o programa vira algo executável. Primeiro o javac (o compilador) traduz o arquivo Main.java; depois o java executa o resultado:
$ cd java $ javac Main.java « compila: não mostra nada quando dá certo $ ls Main.class Main.java « o .class é o programa traduzido (bytecode) $ java Main « executa a classe Main (sem o .class) Oi $ echo $? 0 « código de saída 0: terminou sem erro
Repare que o javac não escreveu nada: no mundo do terminal, silêncio quer dizer sucesso. Ele criou o arquivo Main.class, e o java Main rodou esse arquivo. A aula javac e java mostra cada passo e os erros mais comuns desse caminho; a aula O Editor do Guia ensina a usar as caixas Experimente e o JShell do guia.
Quando quiser só testar uma conta rápida, o Java tem o JShell, um "Java de conversa": você digita, ele responde na hora. Experimente:
Missão: digite 7 + 8 e aperte Enter. O JShell mostra o resultado com um nome, como $1 ==> 15. Depois tente "Olá, " + "Ana".
7 + 8
A aula JShell explica o que é o $1 e como guardar valores e criar métodos ali dentro.
Escolha sua trilha
Nível 1 · Iniciante
Para quem nunca programou.
- O que é Java, JDK e JVM; instalar e escolher um editor
- O primeiro programa,
javac,javae JShell - Variáveis, tipos e operadores
- Textos,
if,switch, laços e arrays - Ler o teclado com
Scanner
Nível 2 · Intermediário
Métodos e orientação a objetos.
- Métodos, parâmetros, retorno e recursão
- Classes, objetos, construtores e encapsulamento
- Herança, interfaces, enums e records
- Exceções, datas, dinheiro e arquivos
Nível 3 · Avançado
Java moderno e profissional.
- Coleções e generics
- Lambdas, streams e
Optional - Pattern matching, classes seladas e threads virtuais
- JAR, Maven, Gradle, JUnit e depuração
Projetos
Programas completos, construídos passo a passo.
- Calculadora e jogo da adivinhação
- Agenda de contatos
- Sistema de biblioteca
- Conta bancária com testes e tarefas com Maven
Referência
Consulta rápida para quando você já sabe o que procura.
- Palavras-chave do Java
- Métodos de
Stringe deMath - Exceções comuns e erros do compilador
- Glossário e quiz
Ler não basta: digite cada exemplo. Use as caixas Experimente das aulas e, quando tiver o JDK instalado, repita no terminal do seu computador. Para instalar, veja Instalar no Linux ou Instalar no Windows e macOS.
Como ler este guia
| Elemento | O que significa |
|---|---|
Caixa com o nome Main.java no canto | O conteúdo de um arquivo de código. O nome no canto é o nome do arquivo. Quando aparece trecho, é só um pedaço de programa, não um arquivo inteiro. |
Main.java · erro de propósito | Código que não compila (ou que quebra ao rodar), mostrado de propósito para você ver a mensagem de erro. Não copie como exemplo a seguir. |
ana@notebook:~$ | O prompt do terminal: usuária ana, na máquina notebook, na pasta pessoal (~). O que vem depois é o comando digitado. |
jshell> | O prompt do JShell: o que vem depois foi digitado no JShell, não no terminal. |
| Linhas sem prompt | A resposta do computador (a saída do programa ou a mensagem de erro). |
| ← etiqueta | Uma explicação do guia sobre aquela linha. Não aparece no terminal real. |
| Java 21+ | O recurso só existe a partir dessa versão do Java. A aula diz a alternativa para versões mais antigas (veja Versões e LTS). |
| ilustrativo | Uma tela que não pôde ser produzida na máquina do guia (por exemplo, o instalador do Windows). Ela segue o formato real, mas os detalhes podem variar. |
Todas as saídas foram conferidas no Eclipse Temurin 25.0.4.1 (uma distribuição gratuita do OpenJDK), num Linux em português do Brasil. O Java 25 é a versão de suporte longo (LTS) mais recente. Quase tudo do Nível 1 funciona igual no Java 17 e no 21; quando um recurso é novo, a aula avisa com o selo de versão. A aula Versões e LTS explica o que isso quer dizer.