Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Sistema de pagamentos

package br.com.fintech;

public class Pagamento {
    private double valor;

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

    public double getValor() {
        return valor;
    }

    public void confirmarPagamento() {
    }

    public double calcularTaxa() {
        return valor * 0.0;
    }
}
package br.com.fintech;

public class CartaoCredito extends Pagamento {

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

    @Override
    public void confirmarPagamento() {
        System.out.printf("Pagamento de R$%.2f confirmado no Cartão de Crédito (Taxa: R$%.2f)%n", getValor(), calcularTaxa());
    }

    @Override
    public double calcularTaxa() {
        return getValor() * 0.03;
    }
}
package br.com.fintech;

public class BoletoBancario extends Pagamento {

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

    @Override
    public void confirmarPagamento() {
        System.out.printf("Boleto de R$%.2f gerado com sucesso (Taxa: R$%.2f)%n", getValor(), calcularTaxa());
    }

    @Override
    public double calcularTaxa() {
        return getValor() * 0.01;
    }
}
package br.com.fintech;

public class Pix extends Pagamento {

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

    @Override
    public void confirmarPagamento() {
        System.out.printf("Pagamento via Pix de R$%.2f confirmado%n", getValor());
    }
}
package br.com.fintech;

public class Principal {
    public static void main(String[] args) {
        Pagamento cartao = new CartaoCredito(250.00);
        Pagamento boleto = new BoletoBancario(500.00);
        Pagamento pix = new Pix(300.00);

        cartao.confirmarPagamento();
        boleto.confirmarPagamento();
        pix.confirmarPagamento();
    }
}

Saída:

Pagamento de R$250,00 confirmado no Cartão de Crédito (Taxa: R$7,50)
Boleto de R$500,00 gerado com sucesso (Taxa: R$5,00)
Pagamento via Pix de R$300,00 confirmado
1 resposta
solução!

Olá, Aline! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de herança para estruturar diferentes formas de pagamento, utilizou muito bem a sobrescrita de métodos com @Override para personalizar cada tipo de transação e ainda compreendeu a importância de aplicar polimorfismo ao instanciar objetos da classe Pagamento e chamar seus métodos de forma genérica.

Permaneça postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Ícone de sugestão Para saber mais:

Sugestão de conteúdo para você mergulhar ainda mais sobre o tema:

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!