Por que a maioria das classes da API HttpClient define objetos imutáveis?
odocumentação para HttpClient afirma o seguinte sobre imutabilidade:
Existem interceptores para examinar e alterar solicitações de saída e respostas recebidas. No entanto, pode ser surpreendente saber que as classes HttpRequest e HttpResponse são imutáveis.
Isso ocorre por um motivo: como o aplicativo pode tentar novamente solicitações, a cadeia de interceptores pode processar uma solicitação individual várias vezes. Se os pedidos fossem mutáveis, um novo pedido seria diferente do pedido original. A imutabilidade garante que os interceptadores vejam a mesma solicitação para cada tentativa.
Acho difícil entender essa explicação. Alguém pode fornecer uma explicação?