none
E a tal da herança múltipla? RRS feed

  • Pergunta

  • Muito boa noite senhoras e senhores da querida MSDN!

    Bem-vindo à mim ao fórum! (?)

    Eu sou relativamente novo com C#. Programei em PHP há muito tempo mas, infelizmente, o Open Source não estava me gerando muuuita produtividade e renda e, portanto, decidi migrar para uma linguagem onde há uma empresa por trás, e putz... Que mão na roda!

    Até então peguei muitíssimo pouco de C# porque fiz mais sites institucionais com MVC 4/Razor Engine e portanto não me foi exigido tanto da linguagem. Sei pouco sobre a sintaxe, mas sei alguma coisa sobre a estrutura geral da linguagem, e pô, é super bacana!

    Mas enfim... Estou criando uma aplicaçãozinha relativamente complexa no Console para aprender características gerais dessa maravilhosa tecnologia, e portanto, me deparei com um problema... cadê a herança múltipla?

    Já li sobre simular herança, já vi que é possível fazer herança múltipla com interfaces, masssss, falaram falaram e não disseram nada sobre o assunto.

    Alguém poderia me dar uma esclarecida sobre?

    Desde já, grato.

    sexta-feira, 5 de abril de 2013 00:10

Respostas

  • Olá,

    Aqui tem um artigo que explica como simular herança múltipla com interfaces.

    sexta-feira, 5 de abril de 2013 11:13
  • Olá,

    Fui dar uma pesquisada e encontrei isto:

    "Lembrando que nem a linguagem C# nem a VB .NET suportam herança múltipla; assim uma classe pode herdar de apenas uma única classe."

    Fonte:

    http://www.macoratti.net/11/05/oop_cph1.htm

    O que vc pode fazer é simular uma herança múltipla, criando uma classe com a junção das outras.

    Cumpz, ADAE.


    • Editado AD_AE sexta-feira, 5 de abril de 2013 11:39
    • Sugerido como Resposta Afonso Fernandes sexta-feira, 5 de abril de 2013 11:56
    • Marcado como Resposta Felipo Gonçalves sexta-feira, 5 de abril de 2013 13:31
    sexta-feira, 5 de abril de 2013 11:37
  • C# não tem herança multipla de classes ( exceto se vc ir herdando uma classe, pegar a classe filha e herdar na classe 'neta', mas ai seriam 2 processos )

    o que ele possui é implementação multipla de interfaces:

    public class Funcionario : IPessoa, IFuncionario, IEmpregado

    por exemplo..

    abraços !


    Att, Afonso Fernandes.

    sexta-feira, 5 de abril de 2013 12:00

Todas as Respostas

  • Olá,

    Aqui tem um artigo que explica como simular herança múltipla com interfaces.

    sexta-feira, 5 de abril de 2013 11:13
  • Olá,

    Fui dar uma pesquisada e encontrei isto:

    "Lembrando que nem a linguagem C# nem a VB .NET suportam herança múltipla; assim uma classe pode herdar de apenas uma única classe."

    Fonte:

    http://www.macoratti.net/11/05/oop_cph1.htm

    O que vc pode fazer é simular uma herança múltipla, criando uma classe com a junção das outras.

    Cumpz, ADAE.


    • Editado AD_AE sexta-feira, 5 de abril de 2013 11:39
    • Sugerido como Resposta Afonso Fernandes sexta-feira, 5 de abril de 2013 11:56
    • Marcado como Resposta Felipo Gonçalves sexta-feira, 5 de abril de 2013 13:31
    sexta-feira, 5 de abril de 2013 11:37
  • C# não tem herança multipla de classes ( exceto se vc ir herdando uma classe, pegar a classe filha e herdar na classe 'neta', mas ai seriam 2 processos )

    o que ele possui é implementação multipla de interfaces:

    public class Funcionario : IPessoa, IFuncionario, IEmpregado

    por exemplo..

    abraços !


    Att, Afonso Fernandes.

    sexta-feira, 5 de abril de 2013 12:00
  • Olá, Israel.

    Sim, já li sobre a simulação de herança múltipla... A questão é: preciso que o pai tenha uma implementação padrão que seja herdada para os filhos e se necessário, os filhos modificam essa herança. Entende?

    segunda-feira, 8 de abril de 2013 23:03