Saber manipular corretamente classes e suas relações, muitas vezes, não é uma tarefa trivial. Garantir a integridade dos dados e das informações manipuladas é essencial para qualquer aplicação e, para algumas, é um pouco mais crítico.
Imagine que você é desenvolvedor Java em uma startup fintech ou financeira. Uma de suas tarefas é implementar uma funcionalidade para gerenciar os saques dos clientes correntistas. Nesse contexto, crie uma classe para representar uma conta corrente, com métodos para depositar uma quantia, sacar uma quantia e obter o saldo atual da conta.
O seu analista passou as seguintes regras para a implementação:
- Para cada saque será debitada uma taxa de operação equivalente a 0,5% do valor sacado.
- Clientes especiais pagam taxas de operação de apenas 0,1% do valor sacado.
Sendo assim, desenvolva uma solução utilizando herança no Java para essa situação.
O algoritmo escrito na linguagem de programação Java onde temos a implementação de uma classe conta corrente nos requisitos apresentados acima é:
public class ContaCorrente {
private double saldo;
private double taxaPadrao = 0.005;
public ContaCorrente(){
this.saldo = 0.0;
}
public double getSaldo() {
return saldo;
}
public void depositar(double valor) {
this.saldo += valor;
}
public void sacar(double valor) {
double taxa = valor * taxaPadrao;
if (saldo - valor - taxa < 0) {
throw new SaldoInsuficienteException();
} else {
saldo -= valor + taxa;
}
}
}
A classe especial que vai herdar a conta corrente e sobrescrevê-la pode ser:
public class ContaEspecial extends ContaCorrente {
private double taxaEspecial = 0.001;
public void sacar(double valor) {
double taxa = valor * taxaEspecial;
if (saldo - valor - taxa < 0) {
throw new SaldoInsuficienteException();
} else {
saldo -= valor + taxa;
}
}
}
Sobre o algoritmo escrito em Java e a resolução das classes de conta corrente e especial
No algoritmo escrito em Java, a classe ContaEspecial herda todos os atributos e métodos de ContaCorrente e tem a capacidade de sobrescrever o comportamento do método sacar, aplicando uma taxa diferente.
Saiba mais sobre Java aqui: https://brainly.com.br/tarefa/19947453
Lista de comentários
Resposta:
public class ContaCorrente {
private double saldo;
private boolean clienteEspecial;
public ContaCorrente(double saldoInicial, boolean clienteEspecial) {
this.saldo = saldoInicial;
this.clienteEspecial = clienteEspecial;
}
public void depositar(double valor) {
this.saldo += valor;
}
public void sacar(double valor) {
double taxa = 0.005; // taxa padrão de operação para saques
if (this.clienteEspecial) {
taxa = 0.001; // taxa especial para clientes especiais
}
double valorTotal = valor + (valor * taxa);
if (valorTotal > this.saldo) {
throw new SaldoInsuficienteException();
}
this.saldo -= valorTotal;
}
public double getSaldo() {
return this.saldo;
}
}
Explicação:
Aqui está uma sugestão de como implementar a classe ContaCorrente utilizando herança no Java!
O algoritmo escrito na linguagem de programação Java onde temos a implementação de uma classe conta corrente nos requisitos apresentados acima é:
public class ContaCorrente {
private double saldo;
private double taxaPadrao = 0.005;
public ContaCorrente(){
this.saldo = 0.0;
}
public double getSaldo() {
return saldo;
}
public void depositar(double valor) {
this.saldo += valor;
}
public void sacar(double valor) {
double taxa = valor * taxaPadrao;
if (saldo - valor - taxa < 0) {
throw new SaldoInsuficienteException();
} else {
saldo -= valor + taxa;
}
}
}
A classe especial que vai herdar a conta corrente e sobrescrevê-la pode ser:
public class ContaEspecial extends ContaCorrente {
private double taxaEspecial = 0.001;
public void sacar(double valor) {
double taxa = valor * taxaEspecial;
if (saldo - valor - taxa < 0) {
throw new SaldoInsuficienteException();
} else {
saldo -= valor + taxa;
}
}
}
Sobre o algoritmo escrito em Java e a resolução das classes de conta corrente e especial
No algoritmo escrito em Java, a classe ContaEspecial herda todos os atributos e métodos de ContaCorrente e tem a capacidade de sobrescrever o comportamento do método sacar, aplicando uma taxa diferente.
Saiba mais sobre Java aqui: https://brainly.com.br/tarefa/19947453
#SPJ1