1
resposta

O statement default method do Java 8 corrompe uma interface?

Estou com uma dúvida, no curso foi exibido como é possível inserir um método concreto dentro de uma interface, através do statement default. Porém uma interface não só no Java, mas em várias outras linguagens não implementam métodos concretos, apenas métodos abstratos para serem assinados pelas classes que à implementam. Com essa mudança do Java 8 é possível burlar essa regra e escrever um método concreto padrão dentro da interface, sem a necessidade de outras classes implementarem o método. Eu entendo que ajudou e muito na codificação da linguagem, mas na programação orientada a objetos é idealizado de que uma interface seja de uma maneira, porém você tem opções de burlar o paradigma da Interface. Isso faz sentido? Não acaba sendo contraditório dentro da programação orientado a objetos?

1 resposta

Fala ai Wesley, tudo bem ?

A galera também não curtiu muito, mas precisaram fazer isso pelo motivo de atualizações da linguagem, na verdade entrou pra que streams entrassem no java.

A ideia é não usarmos esse recurso, mas não dá pra forçar a não utilização.