- 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
Top comments (0)