programandoai

Exercício: Classe com validação

Modele uma conta bancária simples: uma classe que impede um saque maior que o saldo, lançando um erro em vez de deixar o saldo ficar negativo por descuido.

Estudar esta lição interativa →

Complete a classe ContaBancaria com um constructor(saldoInicial) que guarda o saldo em this.saldo, um método depositar(valor) que soma ao saldo, e um método sacar(valor) que subtrai do saldo, mas lança um erro (com throw new Error(...)) quando o valor do saque for maior que o saldo disponível, sem alterar o saldo nesse caso. Os dois métodos também recusam um valor que não seja um número maior que zero (um texto como "30", o zero ou um número negativo): lançam um Error e deixam o saldo como estava. E cada conta tem o seu próprio saldo: duas contas existindo ao mesmo tempo não se misturam.

ContaBancaria deve ter constructor(saldoInicial), depositar(valor) e sacar(valor). Os dois métodos lançam um Error (sem mexer no saldo) se valor não for um número maior que zero; sacar também lança um Error se valor > saldo. O saldo é de cada conta (this.saldo), não compartilhado.
class ContaBancaria {
  constructor(saldoInicial) {
    // guarde o saldo inicial
  }
  depositar(valor) {
    // se valor não for um número maior que zero, lance um Error
    // senão, some ao saldo
  }
  sacar(valor) {
    // se valor não for um número maior que zero, lance um Error
    // se valor > this.saldo, lance: throw new Error("Saldo insuficiente");
    // senão, subtraia do saldo
  }
}

🧩 Este é um exercício com correção automática — abra no app para completá-lo e verificar.

← Voltar ao índice do curso