Capa do Ebook gratuito Curso de criação de sistemas com Python e Django completo

Curso de criação de sistemas com Python e Django completo

5

(4)

176 páginas

Classes e objetos em Python: Herança e polimorfismo

Capítulo 40

Tempo estimado de leitura: 3 minutos

Audio Icon

Ouça em áudio

0:00 / 0:00

Herança e polimorfismo são dois conceitos fundamentais na programação orientada a objetos (OOP) e são amplamente usados ​​em muitas linguagens de programação, incluindo Python. Vamos explorar esses conceitos em detalhes.

7.4.1 Herança

A herança é um recurso da programação orientada a objetos que permite que uma classe herde atributos e métodos de outra classe. A classe de onde os atributos e métodos são herdados é chamada de classe base ou classe pai, e a classe que herda esses atributos e métodos é chamada de classe filha ou classe derivada.

No Python, a herança é realizada definindo uma nova classe, seguida pelos nomes das classes pai entre parênteses.

class ClassePai:
    pass

class ClasseFilha(ClassePai):
    pass

Aqui, ClasseFilha é uma subclasse de ClassePai e herda todos os seus atributos e métodos.

Python também suporta herança múltipla, onde uma classe pode herdar de várias classes pai. Isso é realizado listando todas as classes pai entre parênteses, separadas por vírgulas.

Continue em nosso aplicativo

Você poderá ouvir o audiobook com a tela desligada, ganhar gratuitamente o certificado deste curso e ainda ter acesso a outros 5.000 cursos online gratuitos.

ou continue lendo abaixo...
Download App

Baixar o aplicativo

class ClassePai1:
    pass

class ClassePai2:
    pass

class ClasseFilha(ClassePai1, ClassePai2):
    pass

Aqui, ClasseFilha é uma subclasse de ClassePai1 e ClassePai2 e herda todos os seus atributos e métodos.

7.4.2 Polimorfismo

O polimorfismo é outro recurso fundamental da programação orientada a objetos. Ele permite que um objeto assuma muitas formas. Mais especificamente, o polimorfismo permite que uma classe filha compartilhe o mesmo nome de método que sua classe pai e ofereça uma implementação diferente desse método.

Por exemplo, considere duas classes, ClassePai e ClasseFilha. Ambas as classes têm um método chamado metodo_exemplo. No entanto, a implementação desse método em cada classe é diferente.

class ClassePai:
    def metodo_exemplo(self):
        print("Método da ClassePai")

class ClasseFilha(ClassePai):
    def metodo_exemplo(self):
        print("Método da ClasseFilha")

Aqui, ClasseFilha é uma subclasse de ClassePai e ambas as classes têm um método chamado metodo_exemplo. No entanto, a implementação desse método em cada classe é diferente. Isso é um exemplo de polimorfismo.

O Python permite o polimorfismo de duas maneiras: sobrecarga de método e substituição de método. A sobrecarga de método permite que uma classe tenha vários métodos com o mesmo nome, mas com diferentes assinaturas de método. A substituição do método permite que uma classe filha forneça uma implementação diferente de um método que já é fornecido por sua classe pai.

Em resumo, a herança e o polimorfismo são características fundamentais da programação orientada a objetos que permitem a reutilização de código e a flexibilidade na implementação de diferentes comportamentos de objetos. Eles são amplamente usados ​​em muitas linguagens de programação, incluindo Python, e são fundamentais para a criação de sistemas eficientes e reutilizáveis.

Agora responda o exercício sobre o conteúdo:

Quais são os dois conceitos fundamentais na programação orientada a objetos (OOP) e como eles são usados em Python?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Herança e Polimorfismo são conceitos fundamentais em OOP. Herança permite que uma classe derivada herde propriedades e métodos de uma classe base, facilitando a reutilização de código. Polimorfismo permite que diferentes classes utilizem o mesmo método de maneira adaptada, permitindo flexibilidade no comportamento de objetos. Em Python, isso é realizado através da definição de subclasses e da sobrecarga ou substituição de métodos herdados.

Próximo capitúlo

Classes e objetos em Python: Métodos especiais

Arrow Right Icon
Baixe o app para ganhar Certificação grátis e ouvir os cursos em background, mesmo com a tela desligada.