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.
Sintaxe
class nome_classe(nome_interface1, ... , 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