O que é a plataforma Java, como ela executa seu código e como criar, compilar e rodar seu primeiro programa — no terminal e na IDE.
Programação Orientada a Objetos em Java · Docente: Profa. Andréa Barboza Proto Sardi
Abertura. Módulo introdutório: antes de POO, o aluno precisa de um ambiente funcionando e de um modelo mental do que a JVM faz. Meta do dia: todos com Java instalado, versão verificada e o "Olá, POO!" rodando.
Módulo 0 · Abertura
Objetivos de aprendizagem
Ao final deste módulo, você será capaz de:
☕Entender a plataforma
Distinguir JDK, JRE e JVM e o papel do javac e do bytecode.
🔁Explicar o ciclo
Descrever as 5 etapas: edição → compilação → carregamento → verificação → execução.
🛠️Preparar o ambiente
Verificar versões e instalar/configurar o Google Antigravity.
▶️Rodar o 1º programa
Criar um projeto e executá-lo pelo terminal e pela IDE.
Objetivos. Estes quatro verbos guiam a aula. "Explicar o ciclo" é o que dá sentido ao resto — sem isso, javac e java viram comandos mágicos.
Conceito 1
O DNA da plataforma Java
Por que Java domina sistemas bancários, Android e grandes empresas há 30 anos?
🧩Simples & OO
Modela aplicações por abstrações do mundo real, descartando complexidade desnecessária.
🛡️Robusta & Segura
Verificação forte de tipos e gerência automática de memória (Garbage Collection).
🌐Portável
Write Once, Run Anywhere: o mesmo bytecode roda em qualquer plataforma.
☕
a chave da portabilidade
Seu código não vira instrução de uma CPU específica — vira bytecode, que a JVM traduz em cada sistema.
DNA. Criada em 1995 (Sun Microsystems). O lema "Write Once, Run Anywhere" é a promessa central: a JVM é a camada que abstrai o hardware. Robustez = tipagem forte + GC. Conecte "Orientada a Objetos" ao Módulo 1 que vem a seguir.
Conceito 2 · arquitetura
A arquitetura do ambiente
Caixas aninhadas: o JDK contém o JRE, que contém a JVM.
📌
para DESENVOLVER, instale o JDK
JDK = ferramentas + JRE + JVM. Quem só vai rodar precisa do JRE; quem programa precisa do JDK.
Aninhamento. A imagem-mãe do módulo: cada caixa contém a próxima. JDK ⊃ JRE ⊃ JVM. Reforce que para a disciplina instalamos o JDK (precisamos do javac). JIT = compila trechos quentes para nativo → Java não é lento.
Conceito 3
O ciclo de vida do software Java
1
Edição — você escreve o arquivo de texto puro .java na IDE.
2
Compilação — o javac traduz o código-fonte em bytecode.class.
3
Carregamento — o Class Loader coloca os bytecodes na memória.
4
Verificação — a JVM confirma que os bytecodes são válidos e seguros.
5
Execução — a JVM lê e executa os comandos no sistema operacional.
Ciclo. Cinco etapas: edição, compilação, carregamento, verificação, execução. A etapa de verificação é um diferencial de segurança do Java (bytecode malicioso é barrado). Mostre que javac (passo 2) e java (passos 3–5) são duas ferramentas distintas.
Conceito 4
Bytecode: o meio do caminho
O bytecode não é nem código-fonte nem código de máquina. É um formato intermediário que só a JVM entende.
Um único .class roda em Windows, Linux ou Mac — porque a JVM de cada um traduz o mesmo bytecode.
🌐
é isso que torna Java portável
Compile uma vez → .class → rode em qualquer lugar que tenha uma JVM.
Bytecode. Analogia: bytecode é uma "língua franca". O programador fala Java; cada SO fala sua linguagem de máquina; a JVM é a tradutora. Por isso o .class é universal e o .java humano. Mostre, se possível, um .class aberto (ilegível) para impacto.
Mãos à obra · instalação
Instalar o JDK e conferir
1
Baixe um JDK (ex.: Temurin/Adoptium ou Oracle JDK 21 LTS).
Se os dois comandos respondem com a versão, o ambiente está pronto.
?
Verificação
java -version funciona mas javac -version dá "comando não encontrado". O que provavelmente foi instalado?
Versões. Resposta da verificação: só o JRE (sem javac). Solução: instalar o JDK. Esse é o erro nº 1 de quem está começando. Use Java 21 LTS por estabilidade. No Windows, lembre do PATH.
A IDE da disciplina
Google Antigravity
A IDE que vamos usar: um fork do VS Code, "agent-first", lançada pela Google em nov/2025.
🧬Base VS Code
Interface e extensões do VS Code — incluindo o Extension Pack for Java — funcionam nela.
🤖Agentes de IA
Traz agentes que planejam e executam tarefas. Suporta Gemini, Claude e GPT.
🆓Multiplataforma
Preview pública gratuita para Windows, macOS e Linux.
🧭
uso na disciplina
A IA é apoio, não substituta: você precisa entender o código que ela ajuda a escrever — é o que avaliaremos.
Antigravity. Por ser fork do VS Code, quem já usa VS Code se adapta na hora. Tem duas visões: Editor (familiar) e Manager (orquestra agentes). Posicione a IA como ferramenta de aprendizado supervisionado — o aluno valida tudo. Alternativa equivalente: VS Code + Extension Pack for Java.
Configuração
Instalar e configurar
1
Baixe o Antigravity no site oficial da Google e instale para o seu sistema.
2
Instale o Extension Pack for Java (Marketplace) — habilita compilar, rodar e depurar.
3
Aponte o JDK nas configurações de Java, caso não seja detectado automaticamente.
4
Abra uma pasta de projeto — é assim que o editor "enxerga" seus arquivos.
📁
o conceito de "pasta = projeto"
A IDE trabalha sobre uma pasta. Tudo que está nela faz parte do projeto.
Configuração. O ponto que confunde iniciantes é "abrir pasta" (não abrir um arquivo solto). Se o Java não rodar, 90% das vezes é JDK não apontado ou extensão ausente. Faça a turma instalar junto, em tempo real.
Primeiro projeto
Criando o primeiro projeto
Uma pasta com seus .java (fonte) e, após compilar, os .class (bytecode).
Main.java
public classMain {
public static voidmain(String[] a){
System.out.println("Olá, POO!");
}
}
📄
regra
Classe pública Main → arquivo Main.java (mesmo nome).
Projeto. Crie a pasta, depois o arquivo Main.java com a classe e o main. Reforce a regra arquivo = classe pública. Os .class só aparecem após compilar — mostre isso ao vivo no próximo slide.
Execução · terminal
Pelo terminal: javac e java
terminal · bash
# entrar na pasta do projeto
$ cd MeuProjeto
# compilar TODOS os .java → gera .class
$ javac *.java
# executar a classe Main (sem .java!)
$ java Main
Olá, POO!
⚙️
javac × java
javac COMPILA (gera .class). java EXECUTA (inicia a JVM e roda o .class).
Atalho (Java 11+): java Main.java roda direto, sem compilar antes. Mas usamos os dois passos para ver o bytecode surgir.
?
Verificação
Por que executamos java Main e não java Main.class nem java Main.java?
Terminal. Resposta: java recebe o nome da classe, não o arquivo. Essa é a base que a IDE automatiza. Vale insistir no terminal primeiro: quando o botão "run" falhar, o aluno saberá o que está acontecendo por baixo.
Execução · IDE
Pela IDE: um clique
O botão Run ▸ faz, nos bastidores, o mesmo javac + java que você fez no terminal.
💡
a IDE não é mágica
Ela automatiza os comandos que você já entende. Saber o terminal é saber o que a IDE faz.
IDE. Mostre o botão Run e o painel Terminal integrado exibindo a mesma saída. O recado pedagógico: a IDE é conveniência sobre o terminal — não substitui o entendimento. Quem domina os dois depura melhor.
Erros frequentes
Tropeços comuns na largada
❓'javac' não é reconhecido
Só o JRE foi instalado, ou o PATH não inclui o JDK.
📄class X is public, should be in X.java
O nome do arquivo não bate com a classe pública.
🚫Could not find or load main class
Rodou java Main.class ou está na pasta errada.
📁IDE não acha o Java
JDK não apontado nas configurações ou extensão de Java ausente.
Erros. Tenha esta lista à mão no laboratório — resolve a maioria dos chamados. Mostre as mensagens reais para a turma reconhecê-las. Cada erro liga a um conceito do módulo (JDK, regra do arquivo, nome da classe, configuração da IDE).
Prática guiada · revisão
Prática: "Olá, POO!"
🎯Tarefa
Crie a pasta, escreva Main.java que imprima seu nome e "Pronto para POO!", e rode pelo terminal e pela IDE.
!
Entrega
Print do terminal com a saída + a versão do javac.
javac gera .class (bytecode); java executa a classe.
Prática + revisão. Tempo: 10 min. Recolha o print como ticket de entrada do Módulo 1. Recapitule os três pontos antes de avançar. Garanta que ninguém siga para POO sem o ambiente rodando.
Síntese do Módulo 0
O que levamos deste módulo
☕A Plataforma
O ciclo java → .class → JVM garante que seu código rode em qualquer hardware. É a base de tudo.
🛠️O Ambiente
JDK instalado, versões conferidas, Antigravity configurado e o primeiro programa rodando.
➡️
próximo módulo
Classes, Objetos e Memória — agora que sabemos rodar Java, vamos aprender a pensar em objetos.
Síntese. Feche com a frase: "vocês têm a oficina montada; no próximo módulo aprendemos a construir". A ponte é natural — o "Olá, POO!" vira a primeira classe de verdade.