Não pode se pensar tão simplificada em herança multipla. Herança 
muiltipla é um conceito muito complexo e a pessoa deve saber exatamente 
o que está fazendo. Fazer um amfibio de carro e navio não daria certo 
mas poderia começar do quais propriedades de um carro vc quer que o 
amfibio tem e de quais do navio. Do navio vc provavelmente não quer mais 
do que o casco e do carro provavelmente so o chassis. Herança multipla 
deve ser algo que acontece com classes bem básicos e nã de classes 
complexos. U exelente exemplo é o iostream de C++:

foi criado uma classe stream, que nada mais faz do que abrir streams. 
Foi criado a classe istream que herda do stream e acresenta somente 
operações de input stream e foi criado a classe ostream que somente 
meixe com output e herda do stream. ai com herança multipla foi criado 
uma classe iostream que herda do istream e ostream e faz input e output 
para streams.

Paulo Simao wrote:

>PessoALL,
>Ontem eu estava discutindo com um amigo, que está começando a desenvolver em
>C++. Ele me perguntou sobre herança múltipla em Java. (Estamos falando de
>conceitos, ok?).
>Ai eu coloquei para da seguinte forma (Exemplo Clássico):
>
>"Suponha que vc tenha um carro e um barco. Se vc quer um carro-anfíbio,
>basta que vc crie uma classe filha de ambas.
>Porém, sabemos que isso é conceitualmente errado.
>Para obter um carro anfíbio,  não nos basta juntar o conceito de carro com o
>conceito de navio.  Na verdade, temos uma lista de requisitos para que
>classifiquemos algo como barco, e uma segunda para que classifiquemos algo
>como carro.
>Para criarmos um carro-anfíbio portanto, devemos criar algo que (aí sim)
>preencha uma nova lista de pré-requisitos, formada pela união das duas
>anteriores. Daí sim, poderemos criar um "molde"(Classe/Implememtação) de
>carro anfíbio, e permitir sua produção em massa (Instâncias/Objetos)."
>
>Ai vem minha pergunta, depois de contar essa histórinha, que eu refleti...
>Será que as pessoas não estão acostumadas a programar de maneira muito
>simplista?
>Eu digo isso com base no descaso que as pessoas fazem do uso de interfaces.
>A eu ver , a programação processual (macro-programação) deve ser feita
>apenas a nível de interface, e as particularizações de um sistema, aí sim,
>implementadas em classes. Obviamente no final devemos implementar uma classe
>para fazer o papel de cada interface, mas ela só preencherá
>(micro-programação) o esqueleto criado com as interfaces.
>
>Que vc's acham disso, na teoria e prática?
>Vc's trabalhado assim?
>Em suma, vamos discutir o assunto?
>    []'s a todos
>        P.O.
>
>ps-> Desculpem  email longo.
>
>
>
>
>------------------------------ LISTA SOUJAVA ---------------------------- 
>http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
>dúvidas mais comuns: http://www.soujava.org.br/faq.htm
>regras da lista: http://www.soujava.org.br/regras.htm
>para sair da lista: envie email para [EMAIL PROTECTED] 
>-------------------------------------------------------------------------
>



------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usuários Java da Sucesu-SP 
dúvidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a