Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — FGV 2024

ProgramaçãoLinguagens de programação
Código
fg085367
Banca
FGV
Órgão
INPE
Ano
2024
Nível
Superior
Cargo
Tecnologista Júnior I - Ambientes Críticos de Tecnologia da Informação em Centro de Dados
Com relação à linguagem de programação JAVA, analise as afirmativas a seguir.I. Para restringir o acesso de um elemento de uma classe para que seja visível apenas dentro da mesma classe, deve-se usar o modificador de acesso chamado protected.II. Para chamar o construtor da classe herdada (classe base) dentro do construtor da classe derivada da anterior, deve-se usar a instrução super().III. Para criar uma variável de referência a um objeto, deve-se usar o operador new.Está correto o que se afirma em
  1. AI, apenas.
  2. BII, apenas.
  3. CIII, apenas.
  4. DI e II, apenas.
  5. EI e III, apenas.
Revelar gabarito e comentário

GabaritoB — II, apenas.

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

Java: modificadores de acesso, herança e instanciação

Gabarito: letra B (apenas o item II está correto). O item I erra ao afirmar que protected restringe o acesso à própria classe – na verdade, private cumpre esse papel. O item II está correto: super() chama o construtor da classe base. O item III está incorreto, pois o operador new cria o objeto, não a variável de referência; esta é criada pela declaração.

Item

Afirmativa

Correto?

Motivo

I

protected restringe acesso à própria classe.

private restringe à classe; protected permite acesso no pacote e por subclasses.

II

super() chama construtor da classe base.

Deve ser a primeira instrução no construtor da subclasse.

III

new cria variável de referência.

new cria o objeto; a variável de referência é criada pela declaração.

Modificadores de acesso
  • 1private
    • Apenas na própria classe
  • 2protected
    • Mesmo pacote
    • Subclasses
  • 3public
    • Todos
  • 4Herança
    • super()
      • Chama construtor da base
      • Primeira instrução
  • 5Instanciação
    • Declaração
      • Cria variável de referência
    • new
      • Cria o objeto
LEVEL · soulevel.com.br

Item I — ❌ Incorreto

A afirmativa diz que o modificador protected torna o elemento visível apenas dentro da mesma classe. Em Java, o modificador protected permite acesso por classes do mesmo pacote e por subclasses, não apenas pela própria classe. Quem restringe o acesso exclusivamente à classe é o modificador private. Portanto, o item está errado.

NÃO CAIA NESSA!

A banca troca o modificador private (acesso apenas na classe) por protected (acesso mais amplo). Memorize: private = só na classe; protected = pacote + herança; public = todos.

Item II — ✅ Correto

Em Java, para invocar o construtor da classe herdada (classe base) dentro do construtor da classe derivada, utiliza-se a instrução super(). Essa chamada deve ser a primeira instrução no construtor da subclasse. O item está perfeitamente correto.

Item III — ❌ Incorreto

O operador new é usado para criar o objeto e retornar uma referência para ele. Contudo, a variável de referência (a variável que guarda essa referência) é criada pela declaração da variável (por exemplo, Tipo nome). A afirmativa diz que "para criar uma variável de referência a um objeto, deve-se usar o operador new" – isso é impreciso: o new cria o objeto; a variável em si é criada pela declaração. Logo, o item é falso.

Conclusão: Apenas o item II está correto, correspondendo à alternativa B.

Link permanente: /questoes/fg085367