Índice
Às vezes acontece que quando fazemos diagramas em sistemas estendidos, percebemos que algumas classes não pertencem à classe principal, porém, podemos precisar de algumas operações da referida classe principal, o que nos deixa com várias opções em aberto.Uma dessas opções é um Interface, este conceito nos permite especificar as operações em uma classe e como apresentá-las a outras pessoas.
Interface
O Interface nos permite especificar um conjunto de operações em classe que podem ser utilizadas por outras pessoas, é representado da mesma forma que uma classe usando um retângulo, porém difere de uma classe por não ter atributos porque será apenas um conjunto de operações.
Para distinguir um Interface de uma aula com seus atributos ocultos, devemos usar a palavra interface como um estereótipo, ou simplesmente colocar um eu na frente do nome dessa interface.
Vejamos o seguinte exemplo de como implementar uma interface em nosso diagrama:
Como podemos ver, implementar uma interface não é tão complexo.
Também temos um formulário omitido para ser capaz de renderizar a interface Dentro de uma classe, podemos ver este formulário na seguinte imagem:
O visibilidade corresponde à maneira como mostramos as operações e atributos de uma classe, existem certos processos que não deveriam ser mostrados para outras classes, então decidimos torná-los privados, isso atende a uma das condições de orientação a objetos que é o encapsulamento.
Temos 3 níveis de visibilidade que são os seguintes:
- Público: isto pode ser visto de qualquer outra classe e para especificá-lo nós demarcamos com um sinal +.
- Protegido: isso só pode ser visto pela classe original e todos aqueles que herdam dela, marcamos com o #.
- Privado: Apenas a classe original pode ver isso e é demarcado por um -.
Vejamos o seguinte exemplo de como especificar a visibilidade das operações e atributos de uma classe: