A passagem de parametros em Java funciona assim: - P/ objetos: por referencia - P/ primitivos: por valor
Veja o exemplo: public class Teste { public void run() { TObj obj = new TObj(); obj .i = 3; System.out.println(obj.i); // obj.i = 3 NovoInt(obj); System.out.println(obj.i); // obj.i = 5 } public void NovoInt(TObj meuObj) { meuObj.i = 5; } public static void main(String args[]) { Teste t = new Teste(); t.run(); } } class TObj { public int i; } []s Carlos E O Chierici [EMAIL PROTECTED] ----- Original Message ----- From: <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, October 03, 2001 9:52 AM Subject: RE: [java-list] Re: Artigo Java x C# Sérgio, Eu gostaria de fazer uma pequena correção no seu email. Java não possui passagem por referência. Somente por valor. Existe uma forma de "simular" passagem de parâmetros por referência, utilizando os objetos ou tipos primitivos armazenados em um array, por exemplo. Mas não existe passagem por referência. Antes que o alguém dê pulinhos de alegria, eu pergunto: e qual é o problema? Alguém por favor, apresente um artigo demonstrativo, baseado em testes de performance ou de algum requisito que mostre qual é o grandisíssimo problema de Java utilizar passagem por valor, e não por referência? Mesmo que haja, isso significa que Java é ruim? Abraços, Denard ------------------------------ LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras da lista: http://www.soujava.org.br/regras.htm para sair da lista: envie email para [EMAIL PROTECTED] -------------------------------------------------------------------------