Herança
Aprenda a reutilizar e ampliar funcionalidades por meio da herança.
Herança é uma aula grátis de Python Academy no CoddyKit. Esta é a aula 3 de 6. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Python Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Python Academy inclui 6 aulas no total.
Introdução à herança
Introdução à herança
Herança é um conceito fundamental da Programação Orientada a Objetos (OOP) que permite que uma classe (subclasse) herde atributos e métodos de outra classe (superclasse). Ela promove a reutilização de código e torna o código mais organizado.
Nesta lição, você aprenderá a implementar herança em Python e entenderá seus benefícios.

Definindo uma superclasse
Definindo uma superclasse
Uma superclasse é a classe base da qual outras classes herdam. Ela é definida como qualquer outra classe:
# Defining a superclass
class Animal:
def speak(self):
print("Animal speaks")Criando uma subclasse
Criando uma subclasse
Uma subclasse herda atributos e métodos de uma superclasse. Para definir uma subclasse, passe o nome da superclasse como parâmetro:
# Defining a subclass
class Dog(Animal):
def speak(self):
print("Dog barks")Sobrescrevendo métodos
Sobrescrevendo métodos
Uma subclasse pode sobrescrever métodos da superclasse para fornecer um comportamento específico:
# Overriding methods in a subclass
class Dog(Animal):
def speak(self):
print("Dog barks")
animal = Animal()
animal.speak() # Outputs: Animal speaks
dog = Dog()
dog.speak() # Outputs: Dog barksUsando a função super()
Usando a função super()
A função super() permite chamar métodos da superclasse na subclasse:
# Using super() to call superclass methods
class Dog(Animal):
def speak(self):
super().speak()
print("Dog barks")Herança múltipla
Herança múltipla
Python oferece suporte à herança múltipla, na qual uma subclasse pode herdar de mais de uma superclasse:
# Example of multiple inheritance
class Flyer:
def fly(self):
print("Flying")
class Swimmer:
def swim(self):
print("Swimming")
class Duck(Flyer, Swimmer):
passVerificando relationships entre classes
Verificando relationships entre classes
Você pode verificar relationships entre classes usando as funções isinstance() e issubclass().
# Checking class relationships
# Checking if an object is an instance of a class
print(isinstance(Dog(), Dog)) # Outputs: True
# Checking if a class is a subclass of another
print(issubclass(Dog, Animal)) # Outputs: TrueErros comuns with herança
Erros comuns with herança
Veja alguns erros que você deve evitar:
- Sobrescrever métodos sem chamar
super()quando necessário. - Confundir a ordem de resolução de métodos (MRO) na herança múltipla.
- Usar herança quando a composição poderia ser uma escolha melhor.
O que aprendemos?
O que aprendemos?
Nesta lição, você aprendeu:
- Como definir superclasses e subclasses.
- Como sobrescrever métodos e usar
super(). - Como a herança múltipla funciona em Python.
Excelente trabalho! Vamos passar para o próximo tópico.

Perguntas Frequentes
A aula “Herança” é grátis?
Sim — o texto completo de “Herança” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Python Academy, atualize para CoddyKit PRO. O curso de Python Academy inclui 6 aulas no total.
O que vou aprender em “Herança”?
Aprenda a reutilizar e ampliar funcionalidades por meio da herança. Você pratica Python Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Python Academy?
Nenhuma experiência prévia é necessária. Python Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 6.
Quanto tempo leva a aula “Herança”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Python Academy?
Sim. Cada aula de Python Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Classes e objetos
- Atributos e métodos
- Herança
- Polimorfismo
- Encapsulamento e abstração
- Métodos mágicos (__str__, __repr__ etc.)