Sobes.tech
Junior — Middle

Como é feita a transmissão de dados nos parâmetros do método em Java?

sobes.tech IA

Resposta da IA

Em Java, a passagem de dados para os parâmetros dos métodos é feita por valor (pass-by-value). Para tipos primitivos (int, boolean, etc.), uma cópia do valor é passada para o método. Para objetos, uma cópia da referência ao objeto é passada, ou seja, o próprio objeto não é copiado, mas a referência a ele é passada por valor.

Exemplo:

void changeValue(int x) {
    x = 10; // copia local é alterada
}

void changeObject(MyObject obj) {
    obj.field = 10; // o campo do objeto ao qual a referência aponta é alterado
}

Dessa forma, as alterações nos parâmetros primitivos dentro do método não afetam as variáveis originais, enquanto as alterações nos campos dos objetos afetam, pois o objeto é o mesmo.