Imprimir Post

Programação Orientada a Objetos com C# (Parte 4.7) – Herança

Resumo:

O objetivo não se aplica a este post.

Uma vez que o conteúdo total desta série foi dividido em partes, deve-se considerar absoluto o resumo da primeira postagem até o momento presente.

Herança - Relembre - Link Primeiro Post

Este tema da série Programação Orientada a Objetos com C# irá demandar mais publicações. Sendo assim, a numeração sequencial desta parte da série passou de 4.6 para 4.7 (vide título) e assim seguirá (4.8, 4.9…) mediante a necessidade de conclusão.

Palavras-chaves:

Variáveis, Propriedades, Modificador, Acesso, Classe, Objeto.

Texto:

Mãos a Obra

Com a alteração da classe Program e a execução das Classes Descendentes a partir desta, foram apresentadas mensagens em uma janela de console utilizando-se das propriedades definidas na Classe Herdada, levando a individualização na ação de cada objeto criado (vide post anterior), o próximo passo na Programação Orientada a Objetos com C# será entender como Classes Descendentes podem conter suas próprias características além das recebidas por Classes Herdadas.

Herança - Relembre - Link Post Anterior

Adendo

Para realização do Post foram utilizados os seguintes Programas:

  • Windows 7 Ultimate;
  • Microsoft Visual Studio 2010 Ultimate SP1 (Service Pack 1).

A única configuração realizada após a instalação dos programas acima, foi manter o Microsoft Visual Studio sendo executado como usuário Administrador do Sistema Operacional, a fim de evitar maiores problemas.

Resultado da Execução da Aplicação

Antes de consolidar a execução da aplicação, provando a utilização prática de Herança, fora proposto um arranjo que desencadeasse a necessidade desta técnica.

Diante do cenário sistema metropolitano (estabelecido ao longo da série) para o tema em questão, surgiram inicialmente as Classes Unitario e EspecialDesempregado que, foram compreendidas como Bilhetes de Metrô:

Herança - Classe Unitario x Classe EspecialDesempregado

Classe Unitario x Classe EspecialDesempregado

Em seguida surge a Classe Billhete:

Herança - Classe Bilhete

Classe Bilhete

Esta classe retira as características duplicadas das classes que a originaram:

Herança - Classe Unitario x EspecialDesempregado x Bilhete

Classe Unitario x EspecialDesempregado x Bilhete

Posteriormente, sentencia estas como Classes Descendentes:

Herança - Classes Descendentes Herdando da Classe Pai Bilhete

Classes Descendentes Herdando da Classe Pai Bilhete

Por fim, a execução fica por conta da classe Program.

Particularizando uma Característica

Pode-se perceber que, entre a imagem onde ocorre o transporte das características em comum das Classes Unitario e EspecialDesempregado para Classe Bilhete, umas destas características foi ignorada, que é a propriedade DataValidade.

Herança - Classe Especial Desempregado identificada com característica exclusiva

Classe Especial Desempregado identificada com característica exclusiva

Propositalmente a retomada a estes pontos de esclarecimento, apresenta que, a propriedade DataValidade é particular da classe EspecialDesempregado, deve ser mantida e não eliminada como havia sido feito.

Considerações Finais:

Esta publicação visa explanar de maneira simples, como identificar uma característica exclusiva em uma Classe Descendente a fim de mantê-la em conjunto com a técnica de Herança, passo que será apresentado na prática posteriormente.

É importante ressaltar que, a medida que os posts forem evoluindo, com apresentações teóricas somadas as práticas, a tendência é que o leitor vá sanando suas dúvidas e dificuldades de entendimento.

Na próxima publicação, ainda quarta parte da série: Programação Orientada a Objetos com C# será apresentado o oitavo post sobre Herança, o leitor irá conferir a continuidade do tema entre outros aspectos relevantes a este assunto.

Referências Bibliográficas:

As referências bibliográficas serão apresentadas no último post desta série.

Sobre o autor

Thiago Richard Vanicore

Thiago Richard Vanicore formou-se em análise e desenvolvimento de sistemas, possui certificação ITIL Foundation V2 e entre seus conhecimentos estão: ASP .Net (WebForms/MVC5/Web API) C#, HTML5, Html/XHtml, CSS3, JQuery, JQuey Mobile, JavaScript, Xml, Ajax, Json, Microsoft SqlServer, MySql, Firebird, Azure, Visual Studio Online, Scrum, UML, CRM, Quality Assurance, CTI (Computer Telephony Integration) MPSBR (Melhoria de Processos do Software Brasileiro).

Link permanente para este artigo: http://linksinergia.com.br/2016/02/24/programacao-orientada-a-objetos-com-c-parte-4-7-heranca/