Diferença entre Superclasse e Subclasse

Diferença de chave - Superclasse vs Subclasse
 

Na Programação Orientada a Objetos (OOP), o sistema é modelado usando objetos. Esses objetos são criados usando uma classe. Uma classe é um blueprint ou uma descrição para criar um objeto. A criação de objetos também é conhecida como instanciação de objetos. Cada objeto está se comunicando com outros objetos. Um programa ou software pode ser desenvolvido usando a Programação Orientada a Objetos. A herança é um conceito importante no POO. Melhora a reutilização do código. Em vez de implementar um programa desde o início, ele permite herdar propriedades e métodos da classe já existente para uma nova classe. Isso ajuda a tornar o programa mais gerenciável. Superclasse e Subclasse são dois termos relacionados à herança. Este artigo discute a diferença entre superclasse e subclasse. o diferença chave entre a Superclasse e a Subclasse é que Superclasse é a classe existente da qual as novas classes são derivadas, enquanto Subclasse é a nova classe que herda as propriedades e métodos da Superclasse..

CONTEÚDO

1. Visão geral e principais diferenças
2. O que é Superclasse
3. O que é subclasse
4. Semelhanças entre Superclasse e Subclasse
5. Comparação lado a lado - Superclasse vs Subclasse em forma de tabela
6. Resumo

O que é Superclasse?

Em Herança, a classe existente da qual as novas classes são derivadas é conhecida como Superclasse. Também é conhecida como classe pai ou classe base.

Existem diferentes tipos de herança. São ilustrados usando os seguintes exemplos. Considere A B e C como classes.

Figura 01: Tipos de herança

Figura 02: Herança híbrida

De acordo com os diagramas acima, as Superclasses variam de acordo com cada tipo de herança. Na herança de nível único, A é a superclasse. Na herança multinível, A é a superclasse para B e B é a superclasse para C. Na herança hierárquica A é a superclasse para B e C. Em heranças múltiplas, A e B são superclasses para C.

A herança híbrida é uma combinação de herança de vários níveis e várias. No diagrama do lado esquerdo, A é a superclasse de B, C e B, C são as superclasses de D. No diagrama do lado direito, A é a superclasse de B e B, D são superclasses de C.

 Consulte o programa abaixo escrito em Java.

Figura 03: Programa de herança em Java

De acordo com o programa acima, a classe A possui métodos sum () e sub (). A classe B possui o método multiply (). A classe B está estendendo a classe A. Portanto, as propriedades e os métodos da classe A são acessíveis pela classe B. Portanto, a classe A é a superclasse. O tipo de referência da classe B é utilizado para criar o objeto. Portanto, todos os métodos como sum (), sub () e multiply () são acessíveis pelo objeto. Se o tipo de referência Superclasse for usado para criação de objeto, os membros da classe B não poderão ser acessíveis. por exemplo. A obj = novo B (); Portanto, a referência de superclasse não pode chamar o método multiply () porque esse método pertence à classe B.

O que é subclasse?

De acordo com os diagramas acima, as subclasses variam de acordo com cada tipo de herança. Na herança única, B é a subclasse. Na herança multinível, B é a subclasse de A e C é a subclasse de B. Na herança hierárquica B e C são subclasses de A. Nas heranças múltiplas, C é a subclasse de A e B.

Na herança híbrida, o diagrama à esquerda, B e C são subclasses de A. D é a subclasse de B e C. No diagrama à direita, B é a subclasse de A. C é a subclasse de B e D.

De acordo com o programa de herança acima, a classe B está estendendo a classe A. Portanto, todas as propriedades e métodos da classe A são acessíveis pela classe B. A classe B é a nova classe que herda da classe A. É conhecida como subclasse. Também é conhecida como classe filho ou classe derivada. A classe B possui o método multiply () e também pode acessar os métodos sum () e sub () da classe A usando herança.

Qual é a semelhança entre superclasse e subclasse?

  • Ambos estão relacionados à herança.

Qual é a diferença entre superclasse e subclasse?

Superclass vs Subclass

Ao implementar a herança, a classe existente da qual as novas classes são derivadas é a Superclasse. Ao implementar a herança, a classe que herda as propriedades e os métodos da Superclasse é a Subclasse.
 Sinônimos
A superclasse é conhecida como classe base, classe pai. A subclasse é conhecida como classe derivada, classe filho.
Funcionalidade
Uma superclasse não pode usar as propriedades e métodos da subclasse. Uma subclasse pode usar as propriedades e métodos da superclasse.
 Herança de nível único
Existe uma superclasse. Existe uma subclasse.
Herança Hierárquica
Existe uma superclasse Existem muitas subclasses.
Herança múltipla
Existem muitas superclasses. Existe uma subclasse.

Resumo - Superclasse vs Subclasse 

Herança é um conceito de POO. Permite o uso de propriedades e métodos de uma classe existente para serem acessados ​​por uma nova classe. A classe herdada é a superclasse e a classe derivada é a subclasse. A diferença entre a superclasse e a subclasse é que a superclasse é a classe existente da qual derivam novas classes, enquanto a subclasse é a nova classe que herda as propriedades e os métodos da superclasse.

Faça o download do PDF Superclasse vs Subclasse

Você pode fazer o download da versão em PDF deste artigo e usá-la para fins offline, conforme nota de citação. Faça o download da versão em PDF aqui Diferença entre superclasse e subclasse

Referência:

1. “Herança em Java - Javatpoint.” The Point, disponível aqui 
2.tutorialspoint.com. "Herança Java". The Point, disponível aqui