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

Aula 5 - Faça como eu fiz: Herança de classes em JS

Segue o código que desenvolvi seguindo a proposta da aula 5. Tomei a liberdade de colocar métodos adicionai na classe por diversão:


class Client {
    constructor(name, cpf, email, cash) {
        this.name = name;
        this.cpf = cpf;
        this.email = email;
        this.cash = cash;
    }

    depositCash(value) {
        this.cash += value;
        console.log(`Olá ${this.name}`);
        console.log(`Você depositou ${value}, seu saldo agora é de: ${this.cash} R$`);
    }
    withdrawCash(value) {
        console.log(`Olá ${this.name}`);
        if (value > this.cash) {
            console.log(`Você não dinheiro o suficiente para essa transação`);
        } else {
            this.cash -= value;
            console.log(`Você sacou ${value}, seu saldo restante é: ${this.cash} R$`);
        }
        console.log(`Seu saldo atual é de ${this.cash} R$`);
    }
    showCash() {
        console.log(`Olá ${this.name}`);
        console.log(`Seu saldo atual é de ${this.cash} R$`);
    }
}

class ClientBank extends Client {
    constructor(name, cpf, email, cash, economy) {
        super(name, cpf, email, cash)
        this.economy = economy;
    }

    depositEconomy(value) {
        this.economy += value;
        console.log(`Olá ${this.name}`);
        console.log(`Você depositou ${value} R$ na sua poupança, sua poupança agora possui: ${this.economy} R$`);
    }
    withdrawEconomy(value) {
        console.log(`Olá ${this.name}`);
        if (value > this.economy) {
            console.log(`Você não dinheiro o suficiente para essa transação`);
        } else {
            this.economy -= value;
            console.log(`Você sacou ${value} R$ da sua poupança, sua poupança agora possui: ${this.economy} R$`);
        }
        console.log(`Sua poupança possui ${this.economy} R$`);
    }
    showEconomy() {
        console.log(`Olá ${this.name}`);
        console.log(`Sua poupança possui ${this.economy} R$`);
    }
    showInfo() {
        console.table(this);
    }

}

const joao = new ClientBank("João Alves", "99955577723", "jojo45@email.com", 300, 900);
joao.depositCash(500);
joao.withdrawCash(300);
joao.showCash();
joao.depositEconomy(80);
joao.withdrawEconomy(20);
joao.showEconomy();
joao.showInfo();

1 resposta
solução!

Legal Danilo!