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

Warning "The assignment to variable senha has no effects"

Nao entendi o porque deste warning, ele eh apresentado na linha de "this.senha = senha; Alguem pode, por favor, me explicar ?? ( ITEM 7)


public abstract class FuncionarioAutenticavel extends Funcionario { private int senha;

public void setSenha (int Senha) {
    this.senha = senha;
}

public boolean autentica (int senha) {
    if (this.senha == senha) {
        return true;
    }else {
        return false;
    }
}

@Override
public double getBonificacao() {
    // TODO Auto-generated method stub
    return 0;
}

}

`

2 respostas
solução!

de acordo com a maneira que esta o seu código , você está alocando senha na própria senha. Veja como você declarou a variável de parâmetro do método set como Senha com "S" maiúsculo.

Ele mostra o warning pois o setter está simplesmente alocando o próprio valor da variável a ela mesma, assim não tendo efeito algum

fazendo da maneira abaixo, deve funcionar normalmente:

public void setSenha (int senha) {
    this.senha = senha;
}

Nao havia notado o "S" maiusculo.

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