É o perfeito exemplo para mostrar que getters e setters não são sinônimo de encapsulamento.
Você tem uma lista private mas tem um método public que retorna uma referência para essa mesma lista.
Dessa forma, qualquer um consegue alterar o conteúdo dela.
B
berkshire
Sim, eu mesmo escrevi o código usando o lombok, oque eu fiquei na dúvida é porque eu não estou entendendo porque não é preciso usar o set nesse caso. No meu entendimento o código só funcionaria caso eu fizesse
Interessante, eu não tinha conhecimento disso, então isso ocorre porque o get retorna uma referência já que lista é uma classe? Se eu fizer um get que retorna um tipo primitivo não vou conseguir alterar ele se o set for do escopo?
S
staroski1 like
Isso mesmo.
Você pode alterar o valor localmente, mas pra atualizar o valor do atributo, vai ter que fazer um set.