Herança múltipla no Java? No Java8 pode….

Postado em

23Para aqueles que ainda não se atualizaram no Java 8, vai ai uma super dica: agora temos a liberdade de usar herança múltipla com defaults method. Segue um exemplo:

public class TesteHerancaMultipla {

interface Cliente {
default BigDecimal calcular(BigDecimal valor) {
return valor.multiply(new BigDecimal(10)).divide(new BigDecimal(100));
}
}

interface Cantar {
default void cantar() {
System.out.println(“gosto de cantar la la la…”);
}
}

class Pessoa implements Cliente, Cantar {
}

@Test
public void teste() {
Pessoa pessoa = new Pessoa();
System.out.println(pessoa.calcular(new BigDecimal(1500)));
pessoa.cantar();
}

Vale a pena comentar que, mesmo com algumas restrições existente na construção de uma interface, ainda sim é uma forma mais simples de herança múltiplas  que antes não existia no Java. Perceba que abre inúmeras opções interessantes de design OOP. Mas cuidado, todo poder vem com responsabilidades…..

“Agora, pois, já nenhuma condenação há para os que estão em Cristo Jesus. Porque a lei do Espírito da vida, em Cristo Jesus, te livrou da lei do pecado e da morte.” Romanos 8:1-2

Anúncios