>

Fórum

Fórum da RL System, voltado para analistas, programadores etc. Tudo sobre linguagem de programação e desenvolvimento Full Stack: Banco de Dados, Android, C#, Java, .NET, PHP, Node, Javascript, TypeScript, Front, HTML e muito mais.



Aula 4 - Herança, Java Basico


Olá, minha dúvida é a seguinte:

Aplicando os conceitos de herança, baseando no conteúdo da aula, eu gostaria de exibir mensagens diferentes para um método da classe pai conforme abaixo:


public class Conta {
protected double saldo;
public int conta;
...
public void mostraSaldo(){
System.out.println(this.saldo);
}
}




public class ContaPoupanca extends Conta {

public void depositar(double valor){
super.depositar(valor);
this.juro();
}

public void mostraSaldo(){
//super.mostraSaldo();
System.out.println("Saldo da Conta Poupança US$: " + this.saldo);
}
public void juro(){
this.saldo += 1;
}
}


Eu quero mostrar mensagens diferentes de acordo com o tipo de classe filha. Da forma acima, comentando o "super" eu consigo exibir apenas a mensagem como gostaria. Caso eu não comente o super, na hora da exibição do saldo aparece primeiro o saldo e em seguida a mensagem com o saldo novamente. Tem alguma restrição se eu comentar o super nessas ocasiões??



3 Respostas


Segue duas saídas da mensagem, a primeira e segunda linha eu não comentei o super na classe ContaCorrente.
A terceira linha exibe a saída ilustrada na pergunta




Olá Marcus!

Se criou apenas a classe ContaPoupanca para herdar o método MostrarSaldo() da classe CONTA, é só você colocar no System.out.println() do método MostrarSalso da classe CONTA a mensagem que deseja exibir. Abaixo exemplo.


public void mostraSaldo(){
System.out.println(this.saldo);
}


Porém se criou duas classes sendo ContaPoupanca e ContaCorrente, será necessário você criar dois métodos com nomes diferentes.

Exemplo:


public void VerSaldoContaCorrente (){
System.out.println("Saldo da conta corrente = " this.saldo);

}
public void VerSaldoContaPoupanca (){
System.out.println("Saldo da conta poupança = " this.saldo);
}


Depois é so chamar esses métodos de acordo com as classes filhas.




Apenas retificando!

Se criou apenas a classe ContaPoupanca para herdar o método MostrarSaldo() da classe CONTA, é só você colocar no System.out.println() do método MostrarSaldo() da classe CONTA a mensagem que deseja exibir. Abaixo exemplo.


public void mostraSaldo(){
System.out.println("Saldo da conta poupança = " this.saldo);