Herança é um conceito central na programação orientada a objetos, que permite que você aprenda com classes existentes e crie suas próprias classes que oferecem funcionalidades adicionais. Neste guia, você aprenderá como aplicar a herança em Python de forma eficaz e como criar classes que herdam de outras classes.

Principais conclusões

  • Classes podem herdar de outras classes, adquirindo suas propriedades e métodos.
  • A herança ajuda a estruturar e reutilizar o código de forma mais eficiente.
  • Subclasses podem implementar funções específicas que herdaram da superclasse, além de adicionar suas próprias funções específicas.

Guia passo a passo

1. Criar uma classe base

Comece criando uma classe simples. A classe Carro será usada como exemplo. Esta classe terá propriedades e métodos básicos que um carro deve ter.

Entendendo e aplicando a herança em Python

2. Instanciar a classe base

Depois de definir a classe, você pode criar uma instância de Carro. Esta instância herdará os métodos e propriedades definidos na classe.

Entender e aplicar herança em Python

3. Criar uma subclasse

Agora crie uma subclasse BMW, que deve herdar suas funcionalidades da classe Carro. A subclasse fornecerá características e comportamentos específicos para um carro BMW.

4. Instanciar a subclasse

Crie uma instância da subclasse BMW para ver como os métodos herdados funcionam e quais novas funções a subclasse oferece além disso.

Entender e aplicar herança em Python

5. Sobrescrever métodos

Você também pode sobrescrever métodos da superclasse na subclasse para fornecer implementações específicas. Aqui, o método o_que_eu_sou é usado na classe BMW.

Entender e aplicar herança em Python

6. Criar funções específicas

Você pode adicionar métodos específicos à subclasse, que não existem na superclasse. Assim, ultrapassar é definido como uma função para a classe BMW.

Entender e aplicar herança em Python

7. Tratamento de erros em caso de incompatibilidade

Ao tentar chamar uma função específica da subclasse BMW em uma instância da superclasse Carro, um erro será exibido. Isso é importante para entender como lidar corretamente com a herança.

Entender e aplicar herança em Python

8. Criação de outra subclasse

Você pode continuar refinando sua abordagem de programação criando outra subclasse de BMW, por exemplo, M3. Esta classe herda todas as funcionalidades de BMW e pode implementar seus próprios métodos.

Entender e aplicar herança em Python

9. Integrar as funções

Teste as hierarquias e a integração de todas as classes criadas. Uma instância de M3 terá agora acesso a todas as funções de seus ancestrais.

Entender e aplicar herança em Python

Resumo – Entender e implementar herança em Python

A herança em Python permite que você estenda classes existentes e implemente funcionalidades específicas em subclasses. Você pode criar um código eficaz e estruturado por meio de implementações simples e herdando métodos e propriedades, tornando-o fácil de manter e expandir.

Perguntas frequentes

O que é herança em Python?Herança é um conceito onde uma classe (subclasse) adquire propriedades e métodos de outra classe (superclasse).

Como criar uma subclasse?Uma subclasse é criada especificando a superclasse ao definir a subclasse entre parênteses.

Posso sobrescrever métodos da superclasse na subclasse?Sim, você pode sobrescrever métodos da superclasse na subclasse usando a mesma assinatura de método.

O que acontece se eu chamar funções específicas da subclasse na superclasse?Isso resultará em um erro, pois a superclasse não conhece as funções específicas da subclasse.

Como criar várias camadas de subclasses?Você pode criar outra subclasse de uma subclasse existente para criar uma hierarquia mais profunda.