← → navega · N notas · F tela cheia
Módulo 0 de 5

Ambiente e
Primeiros Passos

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

JDK — Java Development Kit javac (compilador) + java (executor) JRE — Java Runtime Environment Biblioteca de classes base (API) + arquivos de suporte JVM — Java Virtual Machine Lê, traduz (Just-In-Time) e executa o bytecode no hardware
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.

Main.javacódigo-fonte javac Main.classbytecode java (JVM) execuçãono seu SO
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).
2
Instale e, se preciso, ajuste a variável PATH.
3
Abra o terminal e verifique as versões.
terminal
$ java -version
openjdk version "21.0.2" ...

$ javac -version
javac 21.0.2
sinal verde
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

▾ MeuProjeto Main.java Cachorro.java Main.class Cachorro.class
Uma pasta com seus .java (fonte) e, após compilar, os .class (bytecode).
Main.java
public class Main {
  public static void main(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

Antigravity — MeuProjeto Run ▸ public class Main { public static void main(String[] a) { System.out.println("Olá, POO!"); TERMINAL ▸ run Main Olá, POO!
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.
JDK ⊃ JRE ⊃ JVM; para programar, instale o JDK.
Ciclo: editar → compilar → carregar → verificar → executar.
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.
módulos
Nota de apresentação para a docente