Polimorfismo significa “muitas formas” e representa o fato de uma determinada característica ser diferente para “cada filho”.

Na programação orientada à objetos, o que acontece é que partimos de um objeto simples que vai evoluindo.

Dessa forma os conceitos do objeto pai continuam a existir, mesmo que tenha sofrido modificações ou assumindo novas formas.

Por exemplo, o diagrama acima pode ser representado da seguinte forma em C#:

public class Pessoa { 
 
public virtual void Viajar() {
/* Ação */ }
}

public class Diretor : Pessoa {

public override void Viajar()  { 
base.Viajar(); 
/* Ações Particulares da Classe Diretor */ 
}
}

 
public class Vendedor : Pessoa { 
public override void Viajar()  { 
base.Viajar(); 
/* Ações Particulares da Classe Vendedor */ 
} 
}

As seguintes palavras-chave podem ser úteis para explorar o código acima:

  • Abstract: Indica uma classe, método ou propriedade que não admite instâncias diretamente.
  • Override: Indica uma redefinição em uma classe derivada.
  • Virtual: Indica um elemento da classe base que pode ser redefinido.
  • This: Indica um elemento da própria classe.
  • Base: Indica um elemento da classe base.
  • Sealed: Indica uma classe que não admite derivadas.

Links adicionais

Polimorfismo em Programação Orientada à objetos

// Comente!

comentários