package ddmdros.alura.exercicios.heranca.cinco;
public class Pagamento {
private double valor;
Pagamento(double valor){
this.valor = valor;
}
public double getValor() {
return valor;
}
public void confirmarPagamento(){
System.out.printf("Pagamento de %.2f confirmado (Taxa: %.2f)\n",valor,calcularTaxa());
}
public double calcularTaxa(){
return valor*0.0;
}
}
package ddmdros.alura.exercicios.heranca.cinco;
public class Cartao extends Pagamento {
public Cartao(double valor) {
super(valor);
}
@Override
public void confirmarPagamento(){
System.out.printf("Pagamento de %.2f confirmado no Cartão de Crédito (Taxa: %.2f)\n",getValor(),calcularTaxa());
}
@Override
public double calcularTaxa(){
return getValor()*0.03;
}
}
package ddmdros.alura.exercicios.heranca.cinco;
public class Boleto extends Pagamento {
private double taxa = getValor()*0.01d;
public Boleto(double valor) {
super(valor);
}
@Override
public void confirmarPagamento(){
System.out.printf("Boleto de %.2f gerado com sucesso (Taxa: %.2f)\n",getValor(),calcularTaxa());
}
@Override
public double calcularTaxa(){
return getValor()*0.01;
}
}
package ddmdros.alura.exercicios.heranca.cinco;
public class Pix extends Pagamento{
public Pix(double valor) {
super(valor);
}
@Override
public void confirmarPagamento(){
System.out.printf("Pagamento via Pix de %.2f confirmado\n",getValor());
}
}
import ddmdros.alura.exercicios.heranca.cinco.Boleto;
import ddmdros.alura.exercicios.heranca.cinco.Cartao;
import ddmdros.alura.exercicios.heranca.cinco.Pagamento;
import ddmdros.alura.exercicios.heranca.cinco.Pix;
public class Main {
public static void main(String[] args) {
Pagamento cartao = new Cartao(250.00);
Pagamento boleto = new Boleto(500.00);
Pagamento pix = new Pix(300.00);
cartao.confirmarPagamento();
boleto.confirmarPagamento();
pix.confirmarPagamento();
}
}