Pessoa tenho um formulário (j2me) onde o usuário preenche alguns dados do pedido que será lancado.
Em algum momento eu chamo o metodo getInfo() do formulário. Este metodo deve preencher uma instancia da classe Pedido com as informações que o usuário colocou no formulário.
segue o metodo getInfo(Pedido) na classe Formulário
public void getInfo(Pedido pedido){
novo = new Pedido();
novo.cliente = "cliente que o usuário escolheu";
pedido = novo;
}
Segue o codigo onde chamo o metodo getInfo() do formulário
Pedido p = new Pedido();
formulario.getInfo(p);//o formulário deve preencher os atributos da instancia "p"
//aqui será esperado que "p" estivesse com as informações, conforme o metodo getInfo() preencheu, porem "p" continua como se getInfo não tivesse feito nada.
O problema é que parece que nao da pra passar um objeto por referencia em um parametro!
[quote=rodpuc][quote]
O problema é que parece que nao da pra passar um objeto por referencia em um parametro!
[/quote]
todo e qualquer objeto é passado por referência em Java[/quote]
Há controvérsias.
Passagem por referência significa que a função receptora pode saber o endereço de memória do objeto passado, e com isso pode colocar um outro objeto nesse endereço.
Como Java não possui isso, as referências para os objetos são passadas por cópia, e o objeto ganha uma nova variável que o refere.
Não há controvérsia, como vc msm disse as referências para os objetos são passadas por cópia logo o objeto é passado por referência. O fato da referência ser copiada é apenas um detalhe de implementação, não muda o fato.