Erro programa bancário bem simples

2 respostas
M

como podem ver é um programa bancário bem simples, desejo que a variavel valor da classe Cliente esteja com o mesmo valor para todas as classes, quando eu herdo de uma classe eu também herdo o valor da variavel?
o erro está na classe main, onde eu passo o objeto como parametro, qual a forma certa? qual o motivo do erro?

package Banco;

public class Cliente {

public double valor;

public Cliente(double valor) {
    this.valor = valor;
}

}

package Banco;

public class Saque extends Cliente {

public Saque(double valor) {
    super(valor);
}

public void sacar(){
    System.out.println(this.valor);
    
}

}

package Banco;

public class Teste {
public static void main(String[] args) {

Cliente c = new Cliente(100.0);
    
    Saque s = new Saque(c); //local do erro
    
    s.sacar();

}

}

2 Respostas

pmlm

Tu dizes que o construtor de Saque recebe um double mas depois na linha que indicas como local do erro estás a passar um Cliente e não um double.

J

Cara dei uma pesquisada, da uma lida nessa parte da apostila:

https://www.caelum.com.br/apostila-java-orientacao-objetos/modificadores-de-acesso-e-atributos-de-classe/#6-4-construtores

com certeza vai achar sua resposta e tirar varias duvidas sobre construtores.

Criado 18 de dezembro de 2015
Ultima resposta 19 de dez. de 2015
Respostas 2
Participantes 3