heranÇa

1 resposta
C

[color=darkred][/color]Olá pessoal,

é o seguinte... to começando a trabalhar com herança, to tendo algumas dificuldades!
To resolvendo um exercício que a princípio nao era mto complicado, mas acho q me perdi um pouco.. se alguém puder dá uma ajuda,

o exercício diz o pra criar uma Classe de Clientes, conforme eu criei...
dpois implementar Classe de Cliente tipo A que são os que tem limite de crédito de 10.000 reais e terão este limite de crédito aumentado de 10% cada vez que os pagamentos do atingirem a metade do limite de crédito.

public class Cliente {

    public Cliente() {
    	limiteDeCredito = 500;
    }
    
    public Cliente( double limiteDeCredito ) {
    	this.limiteDeCredito = limiteDeCredito;
    }

    protected static String nome;
    private double limiteDeCredito;   
    private double saldoDevedor;   
    
    public void alteraLimiteDeCredito(double limiteDeCredito) {
        this.limiteDeCredito = limiteDeCredito;
    }

    public double getLimiteDeCredito() {
		return limiteDeCredito;
	}

	public void setLimiteDeCredito(double limiteDeCredito) {
		this.limiteDeCredito = limiteDeCredito;
	}

	public double getSaldoDevedor() {
		return saldoDevedor;
	}

	public void setSaldoDevedor(double saldoDevedor) {
		this.saldoDevedor = saldoDevedor;
	}

	public double buscaSaldoDevedor() {
        return saldoDevedor;
    }

    public void compra( double vlCompra ) {
    	
    	if( vlCompra <= valorDisponivelParaCompras() ) {
    		saldoDevedor += vlCompra;
    	} else {
    		System.out.println( "Saldo insuficiente...");
    	}
    }
    
    public double paga( double valorPago ) {
    	
    	if( saldoDevedor >= valorPago ) {
    		saldoDevedor -= valorPago;
    		return 0;
    	} else {
    		double troco = valorPago - saldoDevedor;
    		saldoDevedor = 0;
    		return troco;
    	}
    }
    
    public double valorDisponivelParaCompras() {
    	return limiteDeCredito - saldoDevedor;
    }
    

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}
    public static void main(String[] args) {
    	
		Cliente cliente = new Cliente( 300 );
		
		ClasseA a = new ClasseA();
		a.nome = "João";
		
			
		System.out.println("Cliente Classe A:" + a.getNome());
		System.out.println("Valor disponível para compras:" + a.valorDisponivelParaCompras());
		System.out.println("==========================");
	}


}

Classe A

public class ClasseA extends Cliente{
	
	public ClasseA(){
		setNome(nome);
		setLimiteDeCredito(10000.0);
		setSaldoDevedor(10000.0);
	}

	public void pagaConta(Double valorPago) {
		Double metadeLimite = getLimiteDeCredito()/2;
		if(getSaldoDevedor() == metadeLimite){
			setLimiteDeCredito(getLimiteDeCredito()* 0.010);
		}
	}
}

Seria isso?
:shock:

1 Resposta

Diegomoco

Parece que é isso mesmo.

É só cliente classe A que tem que criar. Seria interessante criar classes de clientes A, B e C com alguns metodos diferentes por exemplo, para poder observar melhor a herança. Mas se é só isso aew que o exercício pede acho que ta dentro da ideia.

Criado 21 de setembro de 2009
Ultima resposta 21 de set. de 2009
Respostas 1
Participantes 2