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

Reutilizando metodos [AJUDA]

Pessoa, bom dia! Considerando a aula de Herança, gostaria de saber se existe alguma possibilidade de herdar o metodo validation descrito abaixo em uma classe filha chamada Director. Caso positivo, alguem saberia me dizer como fazer esta reutilização?

open class Manager(
    name: String,
    nin: String,
    salary: Double,
    val password: String
) : Employee(name = name, nin = nin, salary = salary) {

    override val bonus: Double
        get() {
            return super.bonus
        }

   open fun validation(password: String): Boolean {
         if (this.password == password) {
            return true
        } else {
            return false
        }
    }
}
class Director(
    name: String,
    nin: String,
    salary: Double,
    password: String,
    val plr: Double
) :Manager (name = name, nin = nin, salary = salary, password= password) {

    override val bonus:Double get(){
        return super.bonus + plr
    }

         // aqui eu gostaria de reutilizar o metodo validation ja realizado na classe mae Manager.
    }

Desde já muito obrigado!!

2 respostas
solução!

Olá. Não tenho muito mais detalhes da implementação para propor uma melhor solução, mas, acho que isso atenderia:

class Director(
    name: String,
    nin: String,
    salary: Double,
    password: String,
    val plr: Double
) :Manager (name = name, nin = nin, salary = salary, password= password) {

    override val bonus:Double get(){
        return super.bonus + plr
    }

    // aqui eu gostaria de reutilizar o metodo validation ja realizado na classe mae Manager.
    fun validation() = super.validation(this.password)
}

muito obrigado Matheus, agora consegui compreender melhor.

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