Parâmetros por referência

Olá!

Como passo um parâmetro por referência em JAVA?

Pelo que percebi alguns tipos de classe não são passados por referência. Mais especificamente, tive problemas com um objeto do tipo ‘File’.

Como faço?

Toda passagem de parametros em Java é por valor, no caso de uma variavel de referencia, como o proprio nome diz o valor é uma referencia…

ex.:

[code]public void metodo(File arq){
//arq é uma referencia, qualquer alteração no objeto vai refletir no objeto original

arq = new File(“C:\teste.txt”);
//como a passagem é por valor, a alteração do valor da variavel arq, como acima, não altera nada na variavel original que foi passada
}[/code]

Mas como eu faço para que as alterações no objeto reflitam na instância original?

Elas sempre vão refletir! O valor passado é uma referencia, o que não adianta você alterar é o valor da variavel passada, mas o objeto que a variavel externa e interna ao metodo referencia é um só!