Índice
O sistema de herança em Java é bastante poderoso, na verdade é uma referência para outras linguagens orientadas a objetos, uma das dúvidas mais comuns que nos passam pela cabeça uma vez que já estamos nas profundezas do desenvolvimento em Java, é se podemos usar os métodos das classes pai por meio das instâncias ou nos mesmos métodos das classes herdadas.A resposta é sim, na verdade é uma das coisas que se lembrou e que tem uma forma particular de ser realizada e é o que veremos a seguir.
Palavra Super ReservadaAssim como podemos usar a palavra reservada Este Para nos referirmos a elementos do mesmo escopo do objeto, também temos algo que pode nos ajudar a acessar os atributos e métodos das classes pai ou superclasses, e essa é a palavra reservada Super, com ele podemos invocar de uma instância ou de um método da subclasse algo que vem da classe da qual ele herda.
Um dos usos mais frequentes que damos à palavra Super, é poder invocar o construtor da superclasse, com isso podemos reduzir a quantidade de código que devemos escrever em nossas classes filhas, vamos ver o seguinte código na imagem:
PrecauçõesÉ tão fácil, embora devamos ter alguns cuidados e conhecimento de como funciona, a primeira coisa é que quando chamamos de super dentro do nosso construtor, devemos chamá-lo primeiro, ou seja, não deve haver nenhuma outra instrução, então dependendo se passamos argumentos ou não, é o construtor que será chamado, por isso também devemos levar em consideração a sobrecarga do construtor.
O construtor de classe pai é a única coisa que não herdamos quando criamos uma subclasse, por isso a única forma de acessar esses construtores é por meio dessa palavra reservada.
Não apenas podemos invocar os construtores, também podemos invocar métodos diretamente da superclasse, é claro que podemos pensar se isso é realmente necessário, uma vez que herdamos esses métodos, mas quando devemos sobrescrever um método, então é aqui que isso assume mais relevância. Vejamos o seguinte exemplo:
Já temos uma ferramenta com a qual podemos obter os diferentes elementos das classes das quais herdamos, dando assim a oportunidade de gerar melhores funcionalidades.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo