2
respostas

Atributo privado _saldo

Olá! no fórum tem uma pergunta semelhante, porém não compreendi a explicação que solucionou o tópico.

Na resposta do exercício de herança das contas, as classes filhas estão utilizando o atributo privado _saldo que foi declarado na classe pai.

No caso de herança, os atributos privados podem ser manipulados fora da classe pai em que foram declarados?

2 respostas

Oi, Maria, tudo bem?

Os atributos privados podem ser acessados a partir da utilização do getter. O get permite o acesso a uma propriedade que retorna um valor computado dinamicamente. No exemplo, foi criado o acessador ou seja o get da prorpriedade saldo, em:

  get saldo() {
        return this._saldo;
    }

Ficou um pouco mais claro? Fala se ficar alguma dúvida!

Oi Laís,

Obrigada pela ajuda! entendo que existe o getter permitindo o acesso, mas ainda tenho dúvidas, porque neste exercício a classe filha ContaCorrente está manipulando o atributo _saldo:


class Conta {
   constructor(saldo) {
        this._saldo = saldo;
    }
    get saldo() {
        return this._saldo;
    }

class ContaCorrente extends Conta {
    atualiza(taxa) {
        this._saldo = taxa + this._saldo;
    }
}

Então queria confirmar se é por causa do uso de herança que isto estaria ok, pois até o momento eu havia entendido que pela convenção não seria adequado utilizar o atributo privado fora de onde ele foi declarado.

Obrigada :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software