O que é uma subclasse em Python?
Uma subclasse é uma classe que herda propriedades e métodos de outra classe, chamada superclasse ou classe pai. A subclasse herda todos os atributos e métodos da superclasse e também pode adicionar seus próprios atributos e métodos.
Por exemplo, digamos que temos uma classe chamada "Veículo" que possui atributos como "cor" e "número_de_rodas" e métodos como "dirigir " e "estacionar". Agora podemos criar uma subclasse chamada “Carro” que herda da classe Veículo e adiciona seus próprios atributos e métodos específicos para carros. A classe Car herdaria todos os atributos e métodos da classe Vehicle e também poderia adicionar seus próprios atributos e métodos como "make" e "model".
Aqui está um exemplo de como você pode definir uma subclasse em Python:
```
class Veículo:
def __init__(self, cor, número_de_rodas):
self.color = cor
self.number_of_wheels = número_de_rodas
def drive(self):
print("Dirigindo...")
def park(self):
print("Estacionado...")
class Carro(Veículo):
def __init__(self, marca, modelo, ano):
super().__init__(marca, modelo, ano)
self.make = make
self. model = model
self.year = ano
def drive(self):
print("Dirigindo o " + self.make + " " + self.model + " em " + self.year)
```
Neste exemplo, a classe Car herda da classe Vehicle e adiciona seus próprios atributos e métodos específicos para carros. A classe Car também substitui o método drive da classe Vehicle por uma nova implementação que inclui a marca, modelo e ano do carro.
As subclasses podem ser úteis quando você deseja criar uma versão mais especializada de uma classe que herda as propriedades e métodos de uma classe pai. Eles são comumente usados em programação orientada a objetos para criar relacionamentos hierárquicos entre classes e para promover a reutilização e modularidade de código.