Conteúdo do Curso
Programação Orientada a Objetos em Python Avançado
Programação Orientada a Objetos em Python Avançado
O que é Polimorfismo?
Polimorfismo é um dos conceitos fundamentais na programação orientada a objetos (POO). Refere-se à capacidade de diferentes classes compartilharem os mesmos atributos e métodos, enquanto exibem comportamentos distintos.
Vamos considerar um exemplo de polimorfismo:
dct = {1: "first", 2: "second", 3: "third"} string = "Codefinity" lst = [1, 2, 3, 4, 5] print(len(dct)) # counts the keys in dictionary print(len(string)) # counts the symbols in string print(len(lst)) # counts the elements in list
A função len()
exibe comportamentos diferentes dependendo do tipo de dados em que opera. Este exemplo serve como demonstração de polimorfismo em ação.
Implementação de Polimorfismo
Para implementar polimorfismo, podemos criar classes que compartilham os mesmos atributos e métodos:
class User: role = "User" def info(self, some_value): print("This is standart user.", some_value + 100) class Admin: role = "Admin" def info(self, some_value): print("This is admin of this service.", some_value * 100) class Hacker: role = "Hacker" def info(self, some_value): print("This person can thief your data.", some_value * 0) user = User() admin = Admin() hacker = Hacker() lst = [user, admin, hacker] for item in lst: print(item.role) item.info(33)
Nota
Polimorfismo em Python refere-se à capacidade de objetos exibirem comportamentos diferentes ao realizar as mesmas ações.
Obrigado pelo seu feedback!