Questão nº 38
Questão de Tecnologia da Informação · CESGRANRIO BB 01/2022 (nº 38)
Um programador foi instruído pelo seu gerente a implementar, em Java, uma classe `MemoriaCalculoVenda` que implementasse a interface `MemoriaCalculo`, já criada pela organização e que representa as exigências da organização para classes que implementam memórias de cálculo.
Nesse cenário, com que fragmento de código o programador deve começar, de forma correta, a implementação da classe?
- A`class MemoriaCalculoVenda extends MemoriaCalculo`
- B`class MemoriaCalculoVenda implements MemoriaCalculo` (alternativa correta)
- C`class MemoriaCalculoVenda imports MemoriaCalculo`
- D`class MemoriaCalculoVenda inherits MemoriaCalculo`
- E`class MemoriaCalculoVenda uses MemoriaCalculo`
Resposta comentada
Gabarito Alternativa B
-
Conceito-chave: Em Java,
implementsé a palavra reservada usada para dizer que uma classe vai cumprir o contrato de uma interface (ou seja, implementar os métodos que ela declara).extendsé para herança de classe, e as outras opções nem existem em Java. -
(A) Incorreta:
extendsé usado para herdar de outra classe (ou classe abstrata), não para implementar uma interface. ComoMemoriaCalculoé uma interface, isso geraria erro de compilação. -
(B) Correta:
implementsé exatamente o mecanismo da linguagem Java para que uma classe implemente os métodos definidos em uma interface, cumprindo o contrato exigido pela organização. -
(C) Incorreta:
importsnão é uma palavra-chave de declaração de classe;importé usado para trazer classes de outros pacotes para o código, não para herdar ou implementar. -
(D) Incorreta:
inheritsnão existe em Java. A herança é feita comextends(para classes) e a implementação de interface comimplements. -
(E) Incorreta:
usesnão é uma palavra-chave da linguagem Java para declaração de relacionamento entre tipos; é apenas um termo conceitual, sem sintaxe válida.
Fonte: CESGRANRIO BB 01/2022 Escriturário - Agente de Tecnologia (Caderno Gabarito 1). Reproduzida para fins de estudo.