Capa do Ebook gratuito Curso completo de Lógica de Programação para iniciantes

Curso completo de Lógica de Programação para iniciantes

3.83

(6)

83 páginas

Encapsulamento: Polimorfismo

Capítulo 71

Tempo estimado de leitura: 3 minutos

+ Exercício
Audio Icon

Ouça em áudio

0:00 / 0:00

O polimorfismo é um dos quatro pilares fundamentais da programação orientada a objetos (POO), juntamente com a abstração, a herança e o encapsulamento. O termo polimorfismo vem do grego e significa "muitas formas". Em programação, refere-se à capacidade de um objeto ser tratado como uma instância de uma classe pai, permitindo assim que uma única variável represente vários tipos de dados.

Conceito de Polimorfismo

O polimorfismo permite que as classes derivadas de uma única classe base compartilhem um design comum. Isso significa que um membro de uma classe pai pode se referir a um membro de uma classe filha. Por exemplo, um objeto de uma classe 'Animal' pode se referir a um objeto de uma classe 'Cão' ou 'Gato'. Isso é possível porque 'Cão' e 'Gato' são subclasses de 'Animal'.

Tipos de Polimorfismo

Existem dois tipos principais de polimorfismo: estático (ou overload) e dinâmico (ou override).

Polimorfismo Estático

O polimorfismo estático ocorre em tempo de compilação. É alcançado através da sobrecarga de métodos ou operadores. A sobrecarga de métodos significa ter dois ou mais métodos com o mesmo nome, mas com diferentes parâmetros. Por exemplo, você pode ter um método 'Somar' que aceita dois inteiros e outro método 'Somar' que aceita dois números de ponto flutuante.

Polimorfismo Dinâmico

O polimorfismo dinâmico ocorre em tempo de execução. É alcançado através da substituição de métodos. A substituição de métodos significa alterar a funcionalidade de um método em uma classe derivada que já está definido na classe pai. Por exemplo, você pode ter um método 'Falar' na classe 'Animal' que é substituído na classe 'Cão' para fazer um som de latido e na classe 'Gato' para fazer um som de miado.

Continue em nosso aplicativo

Você poderá ouvir o audiobook com a tela desligada, ganhar gratuitamente o certificado deste curso e ainda ter acesso a outros 5.000 cursos online gratuitos.

ou continue lendo abaixo...
Download App

Baixar o aplicativo

Benefícios do Polimorfismo

O polimorfismo é uma ferramenta poderosa que oferece flexibilidade e simplicidade ao código. Aqui estão alguns dos benefícios:

  • Reutilização de Código: Com o polimorfismo, é possível escrever um código que funciona com objetos de diferentes classes. Isso significa que você pode reutilizar o mesmo código para diferentes tipos de objetos.
  • Extensibilidade: O polimorfismo permite que você adicione novas classes sem alterar o código existente. Isso torna o sistema mais extensível e fácil de manter.
  • Flexibilidade: O polimorfismo permite que você escreva código mais flexível que pode lidar com diferentes situações. Por exemplo, você pode usar uma variável do tipo 'Animal' para se referir a um objeto 'Cão' ou 'Gato' dependendo da situação.

Conclusão

Em resumo, o polimorfismo é um conceito fundamental na programação orientada a objetos que permite que um objeto seja tratado como uma instância de várias classes. Ele oferece flexibilidade e extensibilidade ao código, permitindo a reutilização de código e a adição de novas classes sem alterar o código existente. Compreender o polimorfismo é essencial para qualquer programador que queira dominar a programação orientada a objetos.

Agora responda o exercício sobre o conteúdo:

O que é polimorfismo na programação orientada a objetos (POO) e quais são seus principais benefícios?

Você acertou! Parabéns, agora siga para a próxima página

Você errou! Tente novamente.

Polimorfismo em POO refere-se à capacidade de um objeto ser tratado como instância de uma classe base, o que permite uma única variável representar múltiplos tipos de dados. Seus principais benefícios incluem a reutilização de código, que facilita a manutenção e desenvolvimento, a extensibilidade para adicionar novas funcionalidades sem alterar o código existente, e a flexibilidade para usar objetos de subclasses de forma intercambiável.

Próximo capitúlo

Encapsulamento: Tratamento de erros

Arrow Right Icon
Baixe o app para ganhar Certificação grátis e ouvir os cursos em background, mesmo com a tela desligada.