Geral Múltipla Escolha

Considerando o conceito de propriedade apresentado, analise o código da figura e complete suas lacunas para criar a propriedade idade na classe Aluno.

Considerando o conceito de propriedade apresentado, analise o código da figura e complete suas lacunas para criar a propriedade idade na classe Aluno.

  1. classmethod; classmethod; setter.
  2. staticmethod; staticmethod; setter.
  3. property; property; value.
  4. property; property; setter.
  5. property; idade; setter.

Resolução completa

Explicação passo a passo

E
Alternativa E

Alternativa E

Para criar uma propriedade (getter/setter) em Python, utilizamos o decorador @property para acessar o valor e @nome_da_propriedade.setter para modificar o valor.

Análise Detalhada

Em Python, o encapsulamento de atributos é frequentemente feito através de propriedades. O processo envolve três etapas principais correspondentes às lacunas mencionadas:

  1. Definição do Getter:
  • Utiliza-se o decorador @property logo acima do método que retorna o valor.
  • Exemplo: @property
  1. Definição do Setter:
  • O setter precisa estar vinculado ao mesmo nome da propriedade definida anteriormente.
  • Sintaxe: @nome_da_propriedade.setter.
  • No caso da questão, a propriedade chama-se idade. Portanto, o decorador deve ser @idade.setter.
  1. Completando as lacunas:
  • Se a estrutura do código for algo como:
        @ [LACUNA 1]
        def idade(self):
            return self._idade

        @ [LACUNA 2] [LACUNA 3]
        def idade(self, valor):
            self._idade = valor
  • A sequência correta é:
  1. property (para transformar o método em getter)
  2. idade (o nome da propriedade para vincular o setter)
  3. setter (o tipo de acesso desejado)

Tabela Comparativa das Opções

AlternativaAnáliseStatus
AUsa classmethod (decorator para métodos de classe). Incorreto para propriedades de instância.Errada
BUsa staticmethod (decorator para métodos estáticos). Incorreto para propriedades.Errada
CRepete property e usa value. A sintaxe correta exige o nome da propriedade antes do .setter.Errada
DUsa property duas vezes. O segundo decorator deve começar com o nome da propriedade, não com a palavra property.Errada
ESegue a sintaxe exata: @property seguido de @idade.setter.Correta

Conclusão: A alternativa E preenche corretamente a lógica de definição de getters e setters no Python, utilizando o decorador property e vinculando o setter ao nome específico da propriedade (idade).

Tem outra questão para resolver?

Resolver agora com IA

Mais questões de Geral

Ver mais Geral resolvidas

Tem outra questão de Geral?

Cole o enunciado, tire uma foto ou descreva o problema — a IA resolve com explicação completa em segundos.