Sobre o conceito de herança, em orientação a objetos, é cor...

Próximas questões
Com base no mesmo assunto
Q4325141 Programação
Sobre o conceito de herança, em orientação a objetos, é correto afirmar que 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: C

Fundamento decisivo: O enunciado cobra o limite de acesso da subclasse aos campos privados da superclasse; por isso, a alternativa que afirma esse limite, C, é a correta.

Tema central: Herança e acesso privado
Análise das alternativas
A
Errada
Inverte os conceitos: a superclasse é a classe-base, mais geral; a subclasse é a classe derivada, mais especializada.
B
Errada
private é um modificador de acesso, não um comando de chamada de construtor. Além disso, o sentido da chamada está invertido: em Java, super(...) permite que o construtor da subclasse invoque o construtor da superclasse.
C
Certa
O critério é a restrição de visibilidade: a relação entre subclasse e superclasse não elimina o caráter privado dos campos. Métodos públicos ou protegidos da superclasse podem permitir operações sobre esses campos, mas isso constitui acesso mediado, não acesso direto pela subclasse. Como o enunciado não especifica linguagem, a afirmação deve ser entendida nesse sentido, e não como proibição absoluta para toda linguagem ou contexto.
D
Errada
Confunde hierarquia com lista sequencial. Uma hierarquia de classes pode ter ramificações e, na representação convencional indicada pela base, os conceitos mais gerais ficam acima dos mais especializados.
E
Errada
Atribui à superclasse o papel de especialização da subclasse. É na subclasse que se podem acrescentar campos e métodos ou sobrescrever métodos herdados, sem que essas alterações sejam obrigatórias.
Pegadinha da questão
A expressão “não tem acesso”, em C, deve ser lida como ausência de acesso direto decorrente da herança, e não como impossibilidade de operar sobre os campos por métodos acessíveis da superclasse. A e E também trocam os papéis de superclasse e subclasse.
Dica para questões semelhantes
  • Separe acesso direto a um campo privado de operações realizadas por métodos públicos ou protegidos da superclasse.
  • Identifique primeiro a classe-base como superclasse e a classe derivada como subclasse; depois confira a quem a alternativa atribui a especialização.
  • Não confunda modificadores de acesso com chamadas de construtor: em Java, private controla acesso e super(...) invoca o construtor da superclasse.
  • Sem indicação de linguagem, não transforme uma regra específica de Java em afirmação universal sobre orientação a objetos.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo