1
resposta

Herança Múltipla - Object e outra classe

Olá pessoal, tudo bem?

Lembro que em alguma das aulas anteriores da Formação de Java, foi dito que não poderíamos ter herança múltipla no Java (i.e Python). Mas se qualquer classe estende de Objeto, então quando eu coloco um extends depois do nome de uma classe, eu estou estendendo Object internamente e também a classe que gostaria de estender. É isso mesmo?

Agradeço a ajuda.

Atenciosamente, Davi Pereira da Silva.

1 resposta

Oiii Davi! Tudo bem?

Na verdade não, realmente não existe herança múltipla em Java. Como todas as classes herdam de Object, o que acontece quando usamos o extends é que a classe Object vira "avó" de uma classe, e não uma segunda mãe. Isso porque a classe filha herda primeiro da classe mãe, mas, como a classe mãe herda de Object, então a classe-filha também herda. Na imagem esse esquema é melhor explicado: Imagem em fundo branco com duas ilustrações lado a lado. Na primeira, à esquerda, há dois retângulos lado a lado, o primeiro escrito "Object", e o segundo, "Classe-mãe". Abaixo de cada um dos retângulos, há duas setas apontando para um terceiro retângulo no meio, mais abaixo, onde está escrito "Classe-filha". As setas indicam que a classe-filha herda das outras duas classes simultaneamente. Porém, há um X vermelho em cima da imagem, indicando que isso não existe em Java. Ao lado dessa ilustração, à direita, há a outra. Ela tem três retângulos, um abaixo do outro, com setas entre eles. No primeiro está escrito "Object", no segundo, "Classe-mãe", e no terceiro, "Classe-filha", indicando que a classe filha herda da classe-mãe, que herda de Object.A imagem à esquerda contém herança múltipla, com a classe-filha herdando simultaneamente de Object e de sua classe-mãe (o que não ocorre), e a imagem à direita mostra o que realmente ocorre.

Espero ter ajudado! Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!