Tem como uma classe ser subclasse de duas superclasses por exemplo:
a classe filha ser subclasse da classe pai e também ser subclasse da classe mãe?
Não.
Em Java, uma classe não pode herdar de duas ou mais classes. Ou seja, isso não pode:
// não pode herdar de mais de uma classe
class MinhaClasse extends ClassePai, ClasseMae {
}
Uma classe só pode ter uma classe mãe (ou pai, tanto faz o nome, mas também é chamado de “super classe”).
Obs: lembrando que sempre tem uma super classe. Se vc não coloca o extends
, então automaticamente a classe herda de Object
.
Você consegue fazer isso usando interfaces e composição.
Mas nem vou me dar ao trabalho de pôr um exemplo aqui, pois seu exemplo de pai e mãe não é legal.
Em que situação do mundo real alguém vai ser pai e mãe ao mesmo tempo?
Olá Leonardo!
Como disseram aí acima, não é possível isso em Java, pois Java não aceita herança múltipla. A linguagem C++ aceita, mas já li que dá problemas caso a aplicação não seja muito bem programada.
Para resolver esse problema o Java disponibiliza o conceito de interface. No livro do Paul Deitel e Harvey Deitel esses cnceitos são bem explicados, mas confesso que tenho uma certa dificuldade para enender.