Para que seja possível o uso de múltiplas interface, precisamos criar uma classe e informar
quais interfaces serão utilizadas. Para isso, devemos separa as interfaces herdadas por (,) no
momento da declaração. Abaixo é mostrado o que foi discutido:
Sintaxe
class nome_classe(nome_interface1, nome_interface2, nome_interfaceN)
#corpo
Exemplo 6
from abc import ABC,abstractmethod
class interface1:
@abstractmethod
def metodo1(p):
pass
class interface2:
@abstractmethod
def metodo2(p):
pass
class classe2(interface1,interface2):
def metodo1(self,p):
print(p)
def metodo2(self,p):
print(p*p)
obj = classe2()
obj.metodo1(1)
obj.metodo2(2)
Saída
1
4
A linguagem Python permite também que a herança múltipla seja mista. Podemos utilizar a herança de
interface em conjunto com uma classe concreta.
Exemplo 7
from abc import ABC,abstractmethod
class interface:
@abstractmethod
def metodo1(p):
pass
class classe:
def metodo2(self,p):
print(p)
class classe2(interface,classe):
def metodo1(self,p):
print(p)
obj = classe2()
obj.metodo1(1)
obj.metodo2(2)
Saída
1
2