O que um arquivo .java precisa para compilar?

Durante os meus estudos para certificação da Oracle, surgiu uma questão bem interessante... O que um arquivo .java precisa para compilar? Vamos verificar com a classe Teste.


class Teste{
public static void main(String\[\] args){
} }

Se eu tirar o método main:


class Teste{
}

E tentar compilar:

Banner da Escola de Programação: Matricula-se na escola de Programação. Junte-se a uma comunidade de mais de 500 mil estudantes. Na Alura você tem acesso a todos os cursos em uma única assinatura; tem novos lançamentos a cada semana; desafios práticos. Clique e saiba mais!

compilando-arquivo-java Ele compila conforme o esperado! Certo agora eu acho que não tem mais nada que possa retirar... Mas e se eu tirar a classe inteira? Ele compila? Sim? Não? O que você acha?

Vamos tentar compilar sem a classe, ou seja, um arquivo vazio:

compilando-arquivo-java2

Compilou??? O que!? Isso mesmo, compilou! Para compilarmos um arquivo .java não precisamos de nada em específico, ou seja, não precisamos de uma classe, método ou qualquer conteúdo. Simples assim!

Caiu na pegadinha e quer se preparar mais? Pensando nisso o instrutor Guilherme Silveira criou a Formação Java na Alura.

Alex Felipe
Alex Felipe

Alex é instrutor e desenvolvedor e possui experiência em Java, Kotlin, Android. Atualmente cria conteúdo no canal https://www.youtube.com/@AlexFelipeDev.

Veja outros artigos sobre Programação