Diferença 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 projeto 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 Programação Orientada a Objetos. Herança é um conceito importante em OOP. Ele melhora a capacidade de 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. A principal diferença entre a Superclasse e a Subclasse é que a Superclasse é a classe existente da qual as novas classes são derivadas, enquanto a Subclasse é a nova classe que herda as propriedades e métodos da Superclasse.
CONTEÚDO
1. Visão geral e diferença-chave
2. O que é superclasse
3. O que é subclasse
4. Semelhanças entre a superclasse e a subclasse
5. Comparação lado a lado - Superclasse vs subclasse na forma tabular
6. Resumo
O que é Superclasse?
Na herança, a classe existente da qual as novas classes são derivadas é conhecida como Superclasse. Também é conhecido como classe pai ou classe base.
Existem diferentes tipos de herança. São ilustrados usando os exemplos a seguir. Considere AB 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 em cada tipo de herança. Na herança de nível único, A é a Superclasse. Na herança multinível, A é a superclasse de B e B é a superclasse de C. Na herança hierárquica, A é a superclasse de B e C. Em heranças múltiplas, A e B são superclasses de C.
A herança híbrida é uma combinação de heranças de vários níveis e múltiplas. No diagrama do lado esquerdo, A é a Superclasse para B, C e B, C são as Superclasses para D. No diagrama do lado direito, A é a Superclasse para B e B, D são Superclasses para 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 os métodos sum () e sub (). A classe B tem o método multiply (). A classe B está estendendo a classe A. Portanto, as propriedades e 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 é usado 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 da Superclasse for usado para a criação do objeto, os membros da classe B não podem ser acessíveis. por exemplo, A obj = novo B (); Portanto, a referência da 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 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. Em 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 é conhecido como classe filha ou classe derivada. A classe B tem 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?
Artigo Diff meio antes da tabela
Superclasse vs Subclasse |
|
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 métodos da Superclasse é a Subclasse. |
Sinônimos | |
A superclasse é conhecida como classe base, classe pai. | A subclasse é conhecida como classe derivada, classe filha. |
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 OOP. Ele 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 novas classes são derivadas, enquanto a Subclasse é a nova classe que herda as propriedades e métodos da Superclasse.
Baixe o PDF Superclass vs Subclass
Você pode baixar a versão PDF deste artigo e usá-la para fins off-line de acordo com a nota de citação. Faça o download da versão em PDF aqui. Diferença entre superclasse e subclasse