Em programação orientada a objetos, as interfaces têm como finalidade 
						
						A) possibilitar a criação de classes que possuam apenas métodos com visibilidade pública. 
 
B) realizar anotações no código-fonte para registrar metadados sobre classes.
 
C) permitir a utilização de herança múltipla, possibilitando que uma classe seja subclasse direta de um número arbitrário de superclasses, mesmo em linguagens que suportam apenas herança simples.
 
D) possibilitar a criação de classes que possuam apenas métodos, mas não possuam nenhum atributo ou propriedade.
 
E) definir comportamento comum que pode ser implementado por um conjunto de classes, a despeito de sua hierarquia de superclasses.