Tem alguma diferença eu fazer isso ou é só uma boa prática?
@Override
public String toString(){
return "Curso : "+this.nome; ...
}
disso:
@Override
public String toString(){
return "Curso : "+this.getNome(); ...
}
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Tem alguma diferença eu fazer isso ou é só uma boa prática?
@Override
public String toString(){
return "Curso : "+this.nome; ...
}
disso:
@Override
public String toString(){
return "Curso : "+this.getNome(); ...
}
nenhuma diferenca.. na verdade, eu usaria o atributo direto.. ja to dentro da classe.. a nao ser que o metodo tivesse alguma logica extra.
O uso de getNome seria indicado caso você faça uma validação no atributo antes de devolvê-lo.
Caso haja uma validação como por exemplo verificar se o nome for nulo e caso seja retornar uma string em branco o código é valido.
A vantagem dessa abordagem é que a validação fica centralizada e caso haja mudanças existe apenas um ponto de alteração. Então é uma boa prática.
Mas na maioria dos casos não haveria diferenças.