Acomo Java e C# têm seus códigos fontes transformados em uma linguagem intermediária (específica de cada linguagem), que será interpretada pela máquina virtual da linguagem quando o programa for executado.
Bcomo C e Ruby são compiladas estaticamente e seus códigos-fontes são transformados diretamente em linguagem de montagem ou assembler.
Cdo tipo script como VBScript e Lua são utilizadas em aplicações web. No caso de sites do WordPress, por exemplo, os desenvolvedores criam plug-ins e usam o VB para solicitar o conteúdo. O código é executado como HTML, permitindo que os visitantes do site visualizem o conteúdo em seus navegadores.
Dorientadas a objeto são todas compiladas e não interpretadas, por isso são consideradas de baixo nível, sendo as mais utilizadas para programação de sistemas embarcados ou aplicações que exijam acesso direto a registros da memória.
Einterpretadas têm seu código-fonte traduzido por um programa tradutor ou assembly, que em seguida é executado pelo sistema operacional. Um exemplo disso é o Bytecode, que é uma linguagem que passa pelo processo de interpretação e, em seguida, é executada por um compilador.
Revelar gabarito e comentário▾
GabaritoA — como Java e C# têm seus códigos fontes transformados em uma linguagem intermediária (específica de cada linguagem), que será interpretada pela máquina virtual da linguagem quando o programa for executado.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Linguagens de programação
Gabarito: letra A. A alternativa A descreve corretamente o funcionamento de linguagens como Java e C#: o código-fonte é compilado para uma linguagem intermediária (bytecode no Java, CIL no .NET) que é executada por uma máquina virtual (JVM, CLR). As demais alternativas contêm erros conceituais sobre compilação, interpretação e classificação de linguagens.
Característica
Java / C#
C
Ruby
VBScript / Lua
Linguagens OO em geral
Processo de execução
Compilado para bytecode/IL → executado por máquina virtual
Compilado estaticamente para código de máquina
Interpretado ou compilado para bytecode (YARV)
Interpretado (script)
Podem ser compiladas ou interpretadas
Nível da linguagem
Alto nível
Médio/alto nível
Alto nível
Alto nível
Alto nível (nenhuma é baixo nível)
Exemplo de uso
Aplicações multiplataforma
Sistemas operacionais, embarcados
Scripts, web (Rails)
Automação, jogos (Lua), web legado (VBScript)
Variado
Correção da descrição na alternativa
✅ Correta (A)
❌ Incorreta (B)
❌ Incorreta (B)
❌ Incorreta (C)
❌ Incorreta (D)
Linguagens de programação: Compiladas para intermediário (Java (bytecode → JVM), C# (CIL → CLR)); Compiladas para máquina (C (código objeto → linkedição), C++ (código de máquina)); Interpretadas (Ruby (YARV bytecode), Python, JavaScript); Script (domínios específicos) (VBScript (ASP clássico), Lua (jogos/extensões))
Alternativa A — ✅ Correta ⟵ GABARITO
Java e C# são linguagens compiladas para uma representação intermediária (bytecode/IL) que roda sobre uma máquina virtual. Isso permite portabilidade e gerenciamento de memória automático. O processo: fonte → compilador → bytecode → máquina virtual → execução.
Alternativa B — ❌ Incorreta
Afirma que C e Ruby são compiladas estaticamente para assembly. C é compilada estaticamente para código de máquina (não necessariamente assembly). Ruby é tipicamente interpretada (ou compilada para bytecode, como YARV), mas não compilada diretamente para assembly. Além disso, linguagens compiladas podem gerar código objeto que é linkeditado, não diretamente assembly.
Alternativa C — ❌ Incorreta
Diz que VBScript e Lua são usadas em aplicações web e que em WordPress desenvolvedores usam VB para solicitar conteúdo, executado como HTML. VBScript foi usado em ASP clássico, mas não é comum em WordPress. Lua é usado em jogos e extensões, não tipicamente web. Código script não é executado como HTML; HTML é estático. A descrição é confusa e imprecisa.
Alternativa D — ❌ Incorreta
"Orientadas a objeto são todas compiladas e não interpretadas, por isso são consideradas de baixo nível". Falso: linguagens OO podem ser compiladas (C++, Java) ou interpretadas (Python, Ruby). Nenhuma linguagem OO é considerada de baixo nível; baixo nível refere-se a assembly ou código de máquina. A afirmação é totalmente equivocada.
Alternativa E — ❌ Incorreta
"Interpretadas têm seu código-fonte traduzido por um programa tradutor ou assembly, que em seguida é executado pelo sistema operacional." Confunde conceitos: assembly é uma linguagem, não um tradutor. Interpretadores executam o código diretamente, sem traduzir para assembly. Bytecode não é executado por compilador, mas por uma máquina virtual. A descrição é incoerente.
PEGA ESSA DICA!
Para questões sobre classificação de linguagens, lembre-se do fluxo: código fonte → compilador → código objeto/bytecode → linker/máquina virtual → executável. Linguagens como Java e C# usam compilação para intermediária + VM. C é compilada para código de máquina nativo. Python/Ruby são interpretadas (ou compiladas para bytecode). Nunca confunda "compilada" com "baixo nível".