Diferença entre herança múltipla e multinível

Índice:

Diferença entre herança múltipla e multinível
Diferença entre herança múltipla e multinível

Vídeo: Diferença entre herança múltipla e multinível

Vídeo: Diferença entre herança múltipla e multinível
Vídeo: Um pedacinho da HERANÇA MÚLTIPLA no JAVA? 2024, Julho
Anonim

Key Difference – Herança Múltipla vs Multinível

Programação Orientada a Objetos (POO) é um paradigma para projetar um programa usando classes e métodos. Cenários do mundo real podem ser mapeados para objetos. Portanto, é fácil construir soluções de software. Uma classe é um projeto para construir um objeto. Ele contém propriedades e métodos. Por exemplo, antes de criar um objeto aluno, deve haver uma classe aluno com propriedades e métodos. Um aluno pode ter propriedades como identificação do aluno, nome e métodos como ler, escrever, estudar. Os métodos descrevem o comportamento enquanto as propriedades são os atributos. Após criar a classe, é possível criar objetos usando-as. A criação de objetos também é conhecida como instanciação de objetos. Objeto não existe isoladamente. Eles se comunicam com outros objetos e os dados são passados dentro dos objetos. Um pilar da POO é a herança. O objetivo da herança é aumentar a reutilização do código. Ele cria uma nova classe de propriedades e métodos da classe já existente. A classe existente é conhecida como classe base e a nova classe é chamada de classe derivada. Herança múltipla e herança multinível são tipos de herança. Este artigo discute a diferença entre eles. A principal diferença entre herança múltipla e multinível é que a herança múltipla é quando uma classe herda de muitas classes base, enquanto a herança multinível é quando uma classe herda de uma classe derivada, tornando essa classe derivada uma classe base para uma nova classe.

O que é Herança Múltipla?

Herança múltipla é quando uma classe herda mais de uma classe base.

Diferença entre herança múltipla e multinível
Diferença entre herança múltipla e multinível

Figura 01: Herança Múltipla

A B e C são classes. A e B são classes base e C é a classe derivada. A classe C tem que gerenciar a dependência de ambas as classes base A e B. Heranças múltiplas não são amplamente utilizadas em projetos de software. Isso torna o sistema mais complexo porque uma classe está herdando muitas classes.

Por exemplo, suponha que a classe A e B tenham um método com o mesmo nome que é a soma() e a classe C está derivando ambas as classes. Após criar um objeto do tipo C e chamar o método sum(), pode ocorrer um erro, pois ambas as classes possuem o mesmo método. O compilador não sabe qual função chamar. Portanto, a Herança Múltipla aumenta a complexidade de um sistema. A Herança Múltipla tem suporte na linguagem C++, mas linguagens como Java, C não oferecem suporte à Herança Múltipla. Em vez disso, essas linguagens usam uma interface semelhante a uma classe, mas não pode ser instanciada.

O que é Herança Multinível?

Herança multinível é quando uma classe herda de uma classe derivada tornando essa classe derivada uma classe base para uma nova classe.

Diferença chave entre herança múltipla e multinível
Diferença chave entre herança múltipla e multinível

Figura 02: Herança Multinível

A herança multinível tem três níveis. A classe intermediária que B herda da classe A e a classe C herda da classe B. A é a classe base para B e B é a classe base para C.

Um programa que implementa a Herança Multinível é o seguinte. O programa é escrito usando Java.

Diferença entre herança múltipla e multinível_Figura 03
Diferença entre herança múltipla e multinível_Figura 03

Figura 03: Programa que implementa a Herança Multinível

De acordo com o programa acima, a classe A é a classe base para a classe B. A classe B é a classe base para a classe C. Todas as propriedades e métodos da classe A são acessíveis pela classe B. Todas as propriedades e métodos da classe B é acessível pela classe C. Portanto, a classe C pode acessar propriedades e métodos de A e B. Ao criar um objeto do tipo C, é possível chamar todos os três métodos A(), B() e C(). A saída dará A, B, C.

Qual é a semelhança entre herança múltipla e multinível?

Ambos são tipos de herança

Qual é a diferença entre herança múltipla e multinível?

Herança Múltipla vs Herança Multinível

Herança múltipla é um tipo de herança em que uma classe herda de mais de uma classe base. Herança multinível é um tipo de herança que herda de uma classe derivada, tornando essa classe derivada uma classe base para uma nova classe.
Uso
A Herança Múltipla não é muito usada porque torna o sistema mais complexo. A herança multinível é amplamente utilizada.
Níveis de Classe
A Herança Múltipla tem dois níveis de classe, a saber, classe base e classe derivada. A Herança Multinível tem três níveis de classe, a saber, classe base, classe intermediária e classe derivada.

Resumo – Herança Múltipla vs Multinível

Herança é um dos principais pilares da Programação Orientada a Objetos. Existem diferentes tipos de herança; são Herança de Nível Único, Herança Multinível, Herança Múltipla, Herança Hierárquica e Herança Híbrida. A herança de nível único tem uma classe base e uma classe derivada. A herança hierárquica tem uma classe base e muitas classes derivadas. A Herança Híbrida é uma combinação de Multinível e Herança Múltipla. Este artigo descreveu a diferença entre herança múltipla e herança multinível. A diferença entre heranças múltiplas e multiníveis é que a herança múltipla é quando uma classe herda de muitas classes base, enquanto a herança multinível é quando uma classe herda de uma classe derivada, tornando essa classe derivada uma classe base para uma nova classe. A herança multinível é amplamente utilizada do que a herança múltipla.

Baixe o PDF Herança Múltipla vs Multinível

Você pode baixar a versão em PDF deste artigo e usá-lo para fins offline conforme nota de citação. Faça o download da versão em PDF aqui Diferença entre herança múltipla e multinível

Recomendado: