Um programador Java criou seu código fonte e o gravou com o ...
Um programador Java criou seu código fonte e o gravou com o nome meuprograma.java. Para fazer os primeiros testes, este, na linha de comando, digitou java meuprograma.java. Neste momento, ao chamar o uso do comando java (antes do nome do código fonte), o programador está invocando o:
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Resposta Correta: A - interpretador java.
Para compreender a questão e a resposta correta, é essencial entender como o código Java é processado até ser executado em uma máquina. O Java é uma linguagem de programação que pode funcionar de maneira tanto compilada quanto interpretada, dependendo do contexto. Quando escrevemos o código fonte em Java, salvamos com a extensão .java
. Esse código precisa ser convertido em um formato que a máquina possa entender e executar.
O processo começa com a compilação, que é feita pelo compilador Java, invocado através do comando javac
. Este comando transforma o código fonte (.java) em bytecode (.class), que é um código intermediário e portátil, mas ainda não é diretamente executável pela máquina. Em seguida, para executar o programa, o bytecode é carregado pela JVM (Java Virtual Machine), que contém o interpretador Java. Este interpretador lê e executa as instruções contidas no bytecode.
Portanto, quando o programador digita o comando java meuprograma.java
na linha de comando, ele está invocando o interpretador, que faz parte da JVM, para executar diretamente o código fonte Java. A partir da versão 11 do Java, há uma funcionalidade chamada "Launch Single-File Source-Code Programs" que permite executar o arquivo fonte diretamente, sem a necessidade explícita de compilar o código para bytecode primeiro.
As outras opções da questão não são corretas no contexto dado:
- Compilador java (opção B): seria correto se o comando usado pelo programador fosse
javac meuprograma.java
, que é o comando para compilar o código fonte e gerar o bytecode (.class). - Linkeditor java (opção C): não é um termo comumente associado ao processo de desenvolvimento em Java. O termo linkeditor (ou linker) é mais relacionado a linguagens como C ou C++, onde é usado para combinar diferentes arquivos de código objeto em um único executável.
- Código objeto java (opção D): refere-se, tipicamente, ao bytecode gerado após a compilação do código fonte Java, não ao processo de execução do programa.
Portanto, a resposta correta é a opção A, pois, ao digitar java meuprograma.java
, o programador está invocando o interpretador Java contido na JVM para executar o código fonte Java.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
podem me corrigir mas se fosse o compilador seria o javac
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo