Métodos – Item 39

Postado em Atualizado em

gemeos_adoraveis_do_filhote_de_cachorro_cartoes-r9386bf5cee414e51bd4f67cf553731ab_xvuak_8byvr_512Faça cópias defensiva quando precisar

Para proteger o estado específico de um objeto mutável contra situações de invariâncias, sempre faça cópias defensivas de todas as referências passadas no construtor ou parâmetros para dentro desse objeto. Para evitar a mesma situação, não use o clone() para fazer a cópia, uma vez que ele não garante a cópia das referências recursivas. Da mesma forma, sempre retorne cópias defensivas de todas as referências retornadas nos métodos. Nesse tópico voltamos ao conceito inicial que é muito melhor usar objetos imutáveis. Para casos de objetos mutáveis que retornem a referência do próprio estado, documente explicitamente no JavaDoc responsabilizando o chamador da possibilidade da ocorrência dessa suposta invariância.

Para todas as informações, veja o post inicial.

“Logo, já não sou eu quem vive, mas Cristo vive em mim; e esse viver que, agora, tenho na carne, vivo pela fé no Filho de Deus, que me amou e a si mesmo se entregou por mim.” Gálatas 2:20