Skip to content

Instantly share code, notes, and snippets.

@eliasalbuquerque
Created December 19, 2023 12:15
Show Gist options
  • Save eliasalbuquerque/bc37035a9cceaa1c59597505e45d6fbf to your computer and use it in GitHub Desktop.
Save eliasalbuquerque/bc37035a9cceaa1c59597505e45d6fbf to your computer and use it in GitHub Desktop.
Curso Dev Aprender | Jhonatan de Souza

DESAFIO

Crie uma classe abstrata chamada Monitor, que irá ter 2 métodos abstratos:

  • aumentar_claridade
  • reduzir_claridade

Os métodos irão receber um número que representa o quanto de claridade deve ser aumentado ou diminuído ao chamar eles.

Após ter criado a classe abstrata, crie uma nova classe chamada de MonitorFullHD e coloque a implementação dos métodos aumentar_claridade e reduzir_claridade dentro deles.

Código

from abc import ABC, abstractmethod


# classe abstrata
class Monitor(ABC):
    @abstractmethod
    def aumentar_claridade(self, brilho):
        pass

    @abstractmethod
    def diminuir_claridade(self, brilho):
        pass


# classe
class MonitorFullHD(Monitor):    
    def aumentar_claridade(self, brilho):
        print(f'Aumentar claridade em {brilho} pontos')

    def diminuir_claridade(self, brilho):
        print(f'Diminuir claridade em {brilho} pontos')


# objeto
monitor_fhd = MonitorFullHD()
monitor_fhd.aumentar_claridade(5)
monitor_fhd.diminuir_claridade(5)

Console

PS C:\Users\elias\Workspace\python-devaprender> python mod7-poo-classes.py        
Aumentar claridade em 5 pontos
Diminuir claridade em 5 pontos
PS C:\Users\elias\Workspace\python-devaprender>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment