1
resposta

Fiz desse jeito

arq1:
from abc import ABC,abstractmethod

class Veiculo(ABC):
    def __init__(self,marca,modelo):
        self._marca = marca
        self._modelo = modelo

    @abstractmethod
    def ligar(self):
        pass
        
arq2:
from exercicio2.veiculo import Veiculo

class Carro(Veiculo):
    def __init__(self,marca,modelo,cor):
        super().__init__(marca,modelo)
        self.cor = cor
        
arq3:
from exercicio2.carro import Carro

carro_1 = Carro("Lexus", "LFA","Verde")
carro_2 = Carro("Jeep","wrangler","Azul")
carro_3 = Carro("Lincoln","Town Car Limousine","Rosa")
1 resposta

Bom dia, João! Como está?

Incrível! Continue resolvendo os desafios e compartilhando com a comunidade Alura.

Notei que você utilizou o módulo abc para criar uma classe abstrata, aplicou de forma eficaz o conceito de herança com super() para reaproveitar atributos da classe base e compreendeu a importância do encapsulamento para estruturar seu projeto de forma limpa e reutilizável.

Permaneça postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Alguns materiais estão em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!