diff --git a/aula140.py b/aula140.py new file mode 100644 index 0000000..8fafa72 --- /dev/null +++ b/aula140.py @@ -0,0 +1,28 @@ +# Herança Múltipla - Python Orientado a Objetos +# Quer dizer que no Python, uma classe pode estender +# várias outras classes. +# Herança simples: +# Animal -> Mamifero -> Humano -> Pessoa -> Cliente +# Herança múltipla e mixins +# Log -> FileLog +# Animal -> Mamifero -> Humano -> Pessoa -> Cliente +# Cliente(Pessoa, FileLog) +# +# A, B, C, D +# D(B, C) - C(A) - B(A) - A +# +# método -> falar +# A +# / \ +# B C +# \ / +# D +# +# Python 3 usa C3 superclass linearization +# para gerar o mro. +# Você não precisa estudar isso (é complexo) +# https://en.wikipedia.org/wiki/C3_linearization +# +# Para saber a ordem de chamada dos métodos +# Use o método de classe Classe.mro() +# Ou o atributo __mro__ (Dunder - Double Underscore)