Interface de Classe

Uma interface é uma coleção de operações que são usadas para especificar um serviço de uma classe. Graficamente, uma interface é representada como um círculo (forma icônica). Toda interface deve ter um nome que a distingue de outras interfaces.

Forma Icônica:

Uma interface pode também ser representada como um estereótipo (forma expandida). Neste caso, é possível visualizar as operações permitidas na interface.

Forma Expandida:

Uma interface especifica um contrato de serviço para uma classe, sem detalhar como será sua implementação. No exemplo abaixo, IPreço especifica esse contrato e Pedido é responsável pela sua realização.
No caso da Virtual LTDA, podemos definir uma interface a qual nomearemos de IPreco (a letra ‘I’ foi usada para permitir identificar a classe como sendo uma classe de interface). A interface IPreço  provê um contrato de definição de preço para a classe Pedido. A classe Pedido, a qual realiza, isto é, provê a implementação concreta da interface IPreco, contém um relacionamento , chamado realização. Neste caso, note que a classe Cliente depende da interface IPreço.

Abaixo é mostrado a mesma modelagem anterior, utilizando-se a forma icônica, chamada de pirulito. Note que nesta modelagem as operações da interface IPreço não são mostradas.