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.