PythonPOObasico

Objetos como atributos

Em código real, objetos frequentemente contêm outros objetos. Por exemplo, um pedido contém um cliente, que contém um endereço. Usar composição evita confusão entre strings e objetos estruturados, permitindo acessar atributos aninhados de forma direta.

O PROBLEMA

Classes Endereco(rua,cidade) e Pessoa(nome,endereco) com pessoa.endereco sendo objeto.

EXEMPLO

Pessoa("Ana",Endereco("Rua A","Recife")).endereco.cidade → Recife

SOBRE O CONCEITO

O exercício ensina composição: uma classe Pessoa tem um atributo endereco que não é uma string, mas sim uma instância da classe Endereco. O erro comum é passar uma string como 'Rua A' em vez de um objeto Endereco('Rua A', 'Recife'). Isso quebra o acesso a pessoa.endereco.cidade, pois uma string não tem atributo cidade. Ao usar um objeto, você pode navegar pela estrutura de dados de forma natural.

RESOLUÇÃO

Mais exercícios de POO

PYPOI2I · IntermediárioHerança simplesPYPOI1I · IntermediárioProperty e setterPYPOI5I · IntermediárioClasse abstrataPYPOO7B · BásicoMétodo estático
Ver todos os exercícios de Python