Pular para o conteúdo principal

Questão de Programação — Java — Quadrix 2025

ProgramaçãoJava
Código
qg595102
Banca
Quadrix
Órgão
CFO
Ano
2025
Nível
Médio
Cargo
Técnico em Tecnologia da Informação
As linguagens de programação são responsáveis por tirar do papel os algoritmos criados pelo programador e por transformá‑los em programas para serem executados pelos computadores modernos. Considerando essa informação, julgue o item seguinte.O Java oferece uma forte tipagem estática, o que significa que os tipos de dados de variáveis devem ser explicitamente definidos em tempo de compilação, garantindo maior segurança e detecção precoce de erros.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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”.

Tipagem estática e forte em Java

Gabarito: ✅ CERTO. O Java é uma linguagem de tipagem estática e forte: os tipos das variáveis devem ser declarados em tempo de compilação, o que permite a detecção precoce de erros e aumenta a segurança do código. Essa característica é amplamente reconhecida na literatura e em materiais de programação, sendo um dos pilares da linguagem.

A tipagem de uma linguagem de programação diz respeito a como os tipos de dados são tratados e verificados. Quando dizemos que uma linguagem é estaticamente tipada, significa que o tipo de cada variável é conhecido e fixado em tempo de compilação — ou seja, antes mesmo de o programa rodar, o compilador já sabe se você está tentando usar um inteiro como se fosse texto, por exemplo. Isso contrasta com a tipagem dinâmica, em que o tipo é determinado em tempo de execução, como ocorre em Python, JavaScript e Ruby.

Já a tipagem forte refere-se à rigidez das operações entre tipos: em uma linguagem fortemente tipada, não é possível realizar operações entre tipos incompatíveis sem uma conversão explícita (cast). Por exemplo, em Java, você não pode somar um int com uma String diretamente — o compilador acusará erro. Isso evita uma série de bugs sutis que ocorrem em linguagens de tipagem fraca, como JavaScript, onde "5" + 3 resulta em "53" (concatenação) em vez de erro.

O Java combina essas duas características: é estática (tipos definidos na declaração) e forte (operações entre tipos incompatíveis exigem conversão explícita). Essa combinação traz benefícios claros: maior segurança, pois muitos erros são capturados ainda na compilação; melhor desempenho, pois o compilador pode otimizar o código sabendo os tipos; e maior legibilidade, pois o tipo declarado documenta a intenção do programador.

Um exemplo prático: ao declarar int idade = 25;, o compilador sabe que idade só pode armazenar números inteiros. Se você tentar idade = "vinte e cinco";, o compilador acusará erro imediatamente, antes de executar o programa. Em uma linguagem de tipagem dinâmica, isso só seria descoberto em tempo de execução, possivelmente causando uma falha inesperada.

A banca explora aqui uma confusão comum: quem está acostumado com linguagens de tipagem dinâmica pode achar que "definir o tipo em tempo de compilação" é algo negativo ou que não se aplica ao Java. Mas o enunciado está perfeitamente alinhado com a definição técnica de tipagem estática. A pegadinha é justamente essa: o candidato pode achar que a afirmação é falsa por pensar em linguagens dinâmicas, mas o Java é um exemplo clássico de tipagem estática e forte.

NÃO CAIA NESSA!

A banca apela para quem confunde tipagem estática com tipagem dinâmica. Se você pensou em Python ou JavaScript, onde o tipo é definido em tempo de execução, pode ter achado que a afirmação estava errada. Mas o Java é exatamente o oposto: os tipos são definidos na declaração, em tempo de compilação. Lembre-se: estática = tempo de compilação; dinâmica = tempo de execução.

Tipagem em Java
  • 1Estática
    • Tipo definido na declaração
    • Verificação em tempo de compilação
    • Detecção precoce de erros
  • 2Forte
    • Sem operações entre tipos incompatíveis
    • Exige conversão explícita (cast)
    • Evita bugs sutis
  • 3Contraste
    • Dinâmica (Python, JS)
      • Tipo em tempo de execução
    • Fraca (JS)
      • "5" + 3 = "53"
LEVEL · soulevel.com.br

Alternativa C — ✅ Certo ⟵ GABARITO

A afirmação está correta. O Java é uma linguagem de tipagem estática e forte, conforme descrito no enunciado. Os tipos das variáveis devem ser declarados explicitamente no código-fonte, e o compilador verifica a compatibilidade dos tipos antes da execução. Isso garante maior segurança e detecção precoce de erros, exatamente como afirmado.

Gabarito: ✅ CERTO

Link permanente: /questoes/qg595102