Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Quando optar por utilizar classe ou interface?

Durante a aula, o professor fez a troca da classe de Contrato, para uma Interface. Acredito que tenha sido apenas para fins didáticos, mas imagino que na vida real haja essa necessidade. Então, quando utilizar uma interface, e não uma classe?

2 respostas
solução!

Olá Izadora!

A escolha entre utilizar uma classe ou uma interface depende do contexto e dos requisitos do sistema que você está modelando. Vou te dar algumas orientações para te ajudar a tomar essa decisão.

Uma classe é utilizada para representar um objeto concreto, ou seja, uma entidade que possui atributos e comportamentos específicos. Por exemplo, no diagrama de classes que você mencionou, a classe "Aluno" representa um objeto concreto que possui atributos como nome e e-mail, além de comportamentos como o método "contaPontos()".

Já uma interface é utilizada para representar um contrato, ou seja, um conjunto de métodos que uma classe deve implementar. Uma interface define quais são os comportamentos que uma classe deve ter, mas não especifica como esses comportamentos devem ser implementados. No exemplo do diagrama de classes, a interface "Contrato" define um contrato que deve ser implementado pelas classes "PJ" e "PF", que representam diferentes tipos de contratos.

A utilização de interfaces é útil quando você precisa definir um conjunto de comportamentos que várias classes diferentes devem implementar. Isso permite que você tenha flexibilidade para usar diferentes implementações desses comportamentos em diferentes contextos. Por exemplo, você pode ter várias classes que implementam a interface "Contrato", cada uma com sua própria implementação específica, mas todas atendendo aos mesmos comportamentos definidos pela interface.

Em resumo, você deve utilizar uma classe quando está modelando um objeto concreto com atributos e comportamentos específicos, e utilizar uma interface quando está definindo um contrato que várias classes devem implementar.

Espero ter ajudado e bons estudos!

Entendi perfeitamente. Muito Obrigada!!