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

uso do this, logo apos a Herança com construtor secundário [DÚVIDA].

Pessoal, alguem poderia me dizer qual é a função do this.senha = senha , neste cod de exemplo da atividade.

class Gerente : Funcionario {

    val senha: Int

    constructor(
        nome: String,
        cpf: String,
        salario: Double,
        senha: Int
    ) : super(
        nome = nome,
        cpf = cpf,
        salario = salario
    ) {
        this.senha = senha
    }

    //métodos

}
2 respostas
solução!

Olá, Leonardo!

A palavra reservada this faz referência ao objeto que chamou o método em questão (no caso, o método construtor). Repare que temos um atributo chamado senha na classe Gerente, então cada objeto dessa classe terá uma senha, além dos atributos herdados de Funcionario. Na definição do método construtor, temos um parâmetro que também se chama senha, e por isso, é necessário fazer uso do this para que a linguagem saiba identificar que o atributo senha do objeto que está chamando o método construtor receberá o valor do parâmetro senha.

O fato do this.senha = senha; estar em um bloco separado é porquê a classe Funcionario não possui atributo senhae , portanto, devemos inicializar os atributos pertencentes à classe pai através do construtor da classe pai, e os atributos que pertencem à classe filha separadamente.

Espero ter ajudado!

Boa sorte em seus estudos!

Muito obrigado Mateus !!

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