Junior — Middle
Quais são as vantagens e desvantagens de objetos que não mudam após a criação?
sobes.tech IA
Resposta da IA
Os objetos imutáveis, que não mudam após a sua criação, têm as seguintes vantagens e desvantagens:
Vantagens:
- Segurança em multithreading: objetos imutáveis podem ser usados com segurança em ambientes multithread sem sincronização.
- Facilidade de compreensão: o estado do objeto não muda, o que facilita a depuração e os testes.
- Uso como chaves em coleções (por exemplo, em HashMap) sem risco de alteração do hash.
Desvantagens:
- Ineficiência em alterações frequentes: para modificar um objeto, é necessário criar uma nova instância, o que pode acarretar custos adicionais em memória e tempo.
- Complexidade ao trabalhar com grandes estruturas de dados que requerem atualizações frequentes.
Exemplo de criação de um objeto imutável em Java:
public final class Person {
private final String name;
private final int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
public String getName() { return name; }
public int getAge() { return age; }
}