Implementação do método autentica com dois parâmetros, está correto? Visto que o java não me permite não ter um return true?
//novo método, recebendo dois params
public boolean autentica(String login, int senha) {
if(super.getCpf() == login) {
this.autentica(senha);
return true;
}else {
return false;
}