DEV Community

FUNDAMENTOS JAVA
FUNDAMENTOS JAVA

Posted on

1

Métodos sobrepostos

  • Métodos sobrepostos permitem a Java dar suporte ao polimorfismo em tempo de execução.
  • O polimorfismo é essencial na programação orientada a objetos, permitindo que uma classe geral defina métodos comuns e que subclasses implementem versões específicas desses métodos.
  • A sobreposição de métodos implementa o conceito "uma interface, vários métodos", onde as subclasses podem adaptar a funcionalidade de métodos herdados.
  • Superclasses fornecem métodos gerais que as subclasses podem usar ou sobrepor para implementar comportamentos específicos, mantendo a consistência da interface.

Exemplo com a classe TwoDShape:

  • A classe TwoDShape define atributos como largura, altura e nome, além de um método area() que é sobreposto nas subclasses.
  • Subclasses Triangle e Rectangle sobrepõem o método area() para calcular a área de acordo com o tipo de forma.
  • O método area() na superclasse serve como espaço reservado, alertando que deve ser sobreposto nas subclasses.

Uso de herança e polimorfismo:
Um array de TwoDShape pode conter objetos de suas subclasses, como Triangle e Rectangle.
O método apropriado de area() é chamado em tempo de execução com base no tipo do objeto referenciado, demonstrando o polimorfismo.

Saída do programa:
O programa ilustra como diferentes formas (triângulos, retângulos) têm suas áreas calculadas corretamente usando o método sobreposto.
Quando um objeto genérico de TwoDShape é usado, a implementação padrão de area() da superclasse é chamada.

package: sobreposicao

Hostinger image

Get n8n VPS hosting 3x cheaper than a cloud solution

Get fast, easy, secure n8n VPS hosting from $4.99/mo at Hostinger. Automate any workflow using a pre-installed n8n application and no-code customization.

Start now

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay