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

Private Set no construtor primario

Como definir um set privado diretamente no construtor primario? que nem é feito para saldo

class Conta( var titular: String, var numero: Int){
    var saldo = 0.0
        private set
}
1 resposta
solução!

Oi Eduardo, tudo tranquilo?

Acredito que o Kotlin não tenha nenhuma maneira sofisticada de fazer isso, então uma forma simples de fazer isso seria simplesmente declarando a variável com o set privado, da mesma forma que fizemos com o saldo, porém sem removê-la do construtor primário.

Então, suponha que numero continua sendo um atributo obrigatório no construtor primário, porém agora queremos que seu set seja privado, poderíamos deixá-lo dessa forma:

class Conta( var titular: String, numero: Int){
    var numero = numero
        private set
    var saldo = 0.0
        private set
}

Veja que continua sendo obrigatório passarmos o numero como parâmetro na criação do objeto, porém agora seu set é privado!

Espero ter ajudado, se ficou qualquer dúvida é só avisar!

Bons estudos!!