Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

dúvida em relação aos atributos privados

Boa tarde, pessoal, tudo joia?

Me surgiu uma dúvida aqui durante a explicação do prof Ricardo.

Sabe-se que, por convenção, pode-se utilizar "#" para indicar que um certo atributos é privado, certo?

Mas, se quisermos altera-lo diretamente:

contaCorrenteCaue.saldo = 100;

Ele (ele o JavaScript) vai sobescrever o valor da variavel "saldo" ou teremos um novo atributo "saldo" dentro da Classe "ContaCorrente"?

Eu poderia simplesmente digitar:

contaCorrenteCaue.pipoca = 100;

que eu teria mais um novo atributos?

muchas gracias!!!!

class Cliente {

    nome;
    cpf;
}

class ContaCorrente {
    agencia;
    #saldo;

    sacar(valor) {

        if(this.#saldo >= valor) {

            this.#saldo -= valor;
        }
    }

    depositar(valor) {

        if(valor > 0) {
            this.saldo += valor;
        }
    }
}

const cliente1 = new Cliente();
cliente1.nome = "Cauê";
cliente1.cpf = 123456789

const cliente2 = new Cliente();
cliente2.nome = "Paulo";
cliente2.cpf = 123456789;

const contaCorrenteCaue = new ContaCorrente();
contaCorrenteCaue.saldo = 0;
contaCorrenteCaue.agencia = 1001;

contaCorrenteCaue.depositar(100);
contaCorrenteCaue.sacar(50);
2 respostas
solução!

Oi Cauê, nesse caso teremos um novo atributo "saldo" o valor do atributo privado não eh alterado.

Por causa desse comportamento devemos tomar cuidado quando trabalhamos com o j

Obrigado pela ajuda, Ricardo. Anotei aqui no caderno.

O curso ta show!!!!