Pular para o conteúdo

Serviço de Seleção do Pessoal da Marinha (SSPM) · Marinha do Brasil 2022

Questão 37 — Programação Orientada a Objetos: Java — Membros Estáticos e de Instância

Programação Orientada a Objetos Java — Membros Estáticos e de Instância

Serviço de Seleção do Pessoal da Marinha (SSPM) 2022

Marinha do Brasil · Quadro Técnico do Corpo Auxiliar da Marinha (CP-T) — Informática · Caderno Amarela

Gabarito disponível

Considere os códigos abaixo.

class Tamandare {

public Integer ALPHA = 1;
public static Integer BRAVO = 2;
public Integer CHARLIE = 3;

// Os métodos se encontram propositalmente omitidos do código

public void main(String[] args) {
Tamandare t = new Tamandare();
System.out.println(t.func1(3) + Tamandare.func2(8) + t.func3(3.14));
}

}

Sabe-se que não houve erro no código na chamada à classe "Tamandaré" e a seus métodos em main. Sabe-se, também, que func1, func2 e func3 foram definidas apenas uma vez na classe. Assim, de acordo com os dados, é correto afirmar que:
Selecione uma alternativa

Resolução comentada

Um método estático (func2) não tem acesso a this.

func2 é chamado como Tamandare.func2(8), portanto é estático. Dentro de método estático não existe this, e usar this.CHARLIE gera erro de compilação.

Análise das alternativas

A) Nada indica que func1 independa de variáveis de instância. B) func2 é estático, então a assinatura sem static não serve. D) Não há garantia sobre a ordem de carregamento das definições de métodos. E) Variáveis estáticas, como BRAVO, são inicializadas na carga da classe, antes das de instância, como ALPHA.

Referência: Java: membros estáticos e de instância.

Resolução comentada do VaiConcursos.

Ver gabarito

Gabarito: C

Fonte: Gabarito preliminar: Gabarito final (após recursos) — página 6