Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Implementar métodos abstratos na subclasse

Em resposta ao colega Nasser --> https://cursos.alura.com.br/forum/topico-implementar-metodos-abstratos-na-subclasse-97625 Que fez a indagação abaixo:


class Classe(Sized):
    pass

class Subclasse(Classe):
    def __init__(self, lista, nome):
        self.nome = nome
        self.lista = lista

    def __len__(self):
        return len(self.lista)

filmes = Subclasse([1,3,2], "oi")
print(len(filmes))

--

É POSSÍVEL implementar os métodos abstratos na Classe Filha ao invés de implementar na Classe Mãe que herda a classe abstrata. No exemplo acima, A classe abstrata Sized é herdada pela "Classe", porém seus métodos abstratos só são implementados na classe filha "Subclasse.

Além de ferir o SOLID. Toda classe pai/filho deve ser capaz de substituir uma a outra em qualquer hipótese.

No caso de metaclass não, mas no caso não dê herança, sim

É a substituição de liskov

3 respostas

Olá Welton tudo bom com você??

Primeiramente eu gostaria muito de agradecer sua participação aqui no fórum! Este é o tipo de ação que esperamos ver entre os nossos alunos! Fique à vontade para colaborar com seus conhecimentos junto à nossa Comunidade!

Na próxima vez, fique à vontade para responder diretamente no tópico criado, no caso o do nosso amigo Nasser, assim ele receberá uma notificação e poderá participar, pois talvez ele não veja o que foi criado nesse tópico. =)

Se a minha resposta te ajudou, fico muito feliz =D e peço que por favor encerre o Post marcando a dúvida como resolvida! Caso precise de ajuda é só voltar aqui e perguntar.

Obrigado

Victor Gonzalez

solução!

Boa tarde Victor,

Eu tentei mas não tinha possibilidade de resposta na questão proposta por ele (https://cursos.alura.com.br/forum/topico-implementar-metodos-abstratos-na-subclasse-97625) Como a ideia dele esta com alguns problema e poderia levar ao erro outras pessoas da comunidade Alura resolvi escrever um tópico igual.

Obrigado pela atenção e manda um abraço para o Paulo Silveira e Guilherme Silveira e toda equipe Alura e Caellum!

Perfeito Welton, é que posts mais antigos exigem mais pontos para participar de fato. Obrigado mais uma vez pela ajuda. E pode deixar que mando seu abraço sim quando encontrar com o Paulo e Guilherme! Não esqueça de encerrar o tópico =)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software