Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — COPEVE-UFAL 2026

ProgramaçãoLinguagens de programação
Código
qg663995
Banca
COPEVE-UFAL
Órgão
IFAL
Ano
2026
Nível
Superior
Cargo
Professor EBTT - Informática
Em Programação Orientada a Objetos, o encapsulamento protege o estado interno de um objeto e define como ele pode ser acessado/modificado. Já a herança permite criar classes derivadas a partir de classes base, promovendo reuso e especialização. Dentro desse assunto, considere o trecho de código em Python, usado para modelar pessoas de uma escola.37.jpg 324×170Assinale a alternativa correta sobre o acesso ao atributo “__nome” e a herança entre as classes.
  1. AA herança só ocorre se “Aluno” declarar novamente o método “get_nome”; sem isso, objetos de “Aluno” não possuem “get_nome”.
  2. BO atributo “__nome” é público e pode ser acessado diretamente por “aluno.__nome” sem restrições, pois Python não tem encapsulamento.
  3. CA chamada “super().__init__(nome)” é inválida em Python; para herdar, corretamente, é necessário repetir todo o código do construtor de “Pessoa” dentro de “Aluno”.
  4. DO atributo “__nome” pode ser acessado por “Aluno” como “self.__nome” dentro de “Aluno”, pois a herança permite que subclasses utilizem diretamente os atributos definidos na classe base.
  5. EO atributo “__nome” está encapsulado na classe “Pessoa” e deve ser acessado por “get_nome()”; “Aluno” herda de “Pessoa” e reutiliza a inicialização do nome via “super().__init__(nome)”.
Revelar gabarito e comentário

GabaritoE — O atributo “__nome” está encapsulado na classe “Pessoa” e deve ser acessado por “get_nome()”; “Aluno” herda de “Pessoa” e reutiliza a inicialização do nome via “super().__init__(nome)”.

Link permanente: /questoes/qg663995