2
respostas

Reuso de código com interfaces

Eu estava assistindo as aulas e fiquei com dúvidas no uso da interface no que diz respeito a reuso de código. No final das contas, todas as classes que implementarem a interface precisarão implementar os seus métodos, por mais q a lógica seja igual ou mto semelhante. Dessa forma estamos voltando para o ctrl-c ctrl-v.

É dessa forma q funciona msm ou tem alguma coisa que eu ainda não entendi?

Obrigado

2 respostas

Não seria Cópia ou Cola pois o método pode estar vazio. As vezes você precisa de um método em especifico dessa interface mas não de um outro, então você implementa apenas a que você precisa.

A cópia e cola aconteceria se você tivesse que copiar o mesmo conteúdo do método muitas vezes, o que não é o caso no uso de interfaces

Olá! Um método abstrato é utilizado para quando temos várias classes que realizam a mesma ação porém de maneiras diferentes. Nessa caso é impossivel que a implementação seja igual pois você estará especificando em cada classe como o método abstrato terá que se comportar.

Seria copia e cola caso você implementasse um método abstrato para classes que relizam a "ação" de maneira especificamente igual, o que não faz muito sentido, para estes casos é melhor criar uma classe mais genérica e fazer as outras classes herdarem esse método dela.

Sempre leve em consideração isso quando ficar em dúvida sobre quando utilizar uma interface e seus métodos abstratos ou quando fazer uma herança , para evitar assim a copia e cola.

Espero ter ajudado! Bons estudos!