Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Princípios da POO: Polimorfismo | Section
Practice
Projects
Quizzes & Challenges
Questionários
Challenges
/
Fundamentos da Programação Orientada a Objetos em Java

bookPrincípios da POO: Polimorfismo

Deslize para mostrar o menu

Polimorfismo

Polimorfismo é outro princípio da POO. Você já se deparou com polimorfismo ao sobrecargar e sobrescrever métodos. Em geral, essa é a essência do polimorfismo. Mas a definição de polimorfismo pode parecer um pouco intimidadora:

Mas, na realidade, é muito mais simples do que parece. Polimorfismo, em termos simples, pode ser dividido em 2 partes:

  • Sobrecarga de métodos: o que você aprendeu neste capítulo, mas vamos revisar.

Vamos analisar um exemplo: precisamos escrever um método que receba um parâmetro int e retorne uma String, assim como um método que faça o mesmo, mas com um parâmetro long. Veja o trecho de código:

Main.java

Main.java

copy
1234567
public String doStuff(int parameter) { //... } public String doStuff(long parameter) { //... }

Como pode ser visto acima, foram criados dois métodos com o mesmo nome, mas que podem realizar funções diferentes. Isso é chamado de sobrecarga de métodos.

  • Sobrescrita de Métodos: Esse tema já foi abordado anteriormente quando o método toString foi sobrescrito neste capítulo. No entanto, vamos revisá-lo novamente.

Vamos analisar um trecho de código que demonstra como sobrescrever um método. Existe uma classe chamada Airplane que herda da classe Transport. Na classe Transport, há um método chamado move que retorna "This transport has started moving".

É necessário que o avião "start flying" em vez de "moving". Para isso, o método move será sobrescrito na classe filha:

Transport.java

Transport.java

Airplane.java

Airplane.java

copy
1234567
public class Transport { // some fields public String move() { return "This transport has started moving"; } }

Como pode ser observado, o método da classe pai foi sobrescrito na classe filha conforme necessário.

Dessa forma, o polimorfismo complementa muito bem a herança. Por meio do polimorfismo, é possível estender o código de maneira conveniente e otimizada, tornando-o flexível.

1. Por que precisamos de polimorfismo em Java?

2. Como o polimorfismo complementa a herança?

3. Qual palavra-chave é usada para sobrecarregar um método?

question mark

Por que precisamos de polimorfismo em Java?

Select the correct answer

question mark

Como o polimorfismo complementa a herança?

Select the correct answer

question mark

Qual palavra-chave é usada para sobrecarregar um método?

Select the correct answer

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 18

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Seção 1. Capítulo 18
some-alt