No livro estamos falando sobre Herança e Composição, há uma citação do Paulo Silveira falando que não faz sentido as classe Gato extender a classe Cachorro, e realmente não faz!
Mas umas páginas depois estamos falamos sobre substituir Herança por Composição, a minha dúvida é: No caso da classe Gato e classe Cachorro, faz sentido utilizar Composição? Gato ter atributo Cachorro (ou vice versa) não faz sentido para mim.
Na sua opinião como poderia ser o design dessas classes? Eu acho que poderíamos ter uma terceira classe chamada Animal, na qual Gato e Cachorro extendem, ou uma interface Animal, na qual Gato e Cachorro implementam…
O que acha?
Obrigado pela atenção!