Cara, vamos deixar claro:
Tudo em java � passado por valor.
MAS, voc� s� mant�m REFERENCIAS para objetos (ou
pointeiros se achar melhor).
Logo, todo objeto � passado por referencia visto que a
referencia � que � passada por valor!

Isso n�o implica de forma alguma em perda de
performance, simplesmente significa que qq v�riavel
que voc� passar como param�tro, se for modificada
dentro do m�todo invocado,n�o refletir� as mudan�as
quando o m�todo retornar

Como em:

String s = "test";
int i = 1;

mudeOsValores(s, i);

System.out.println(s + 1); // == "test1"

Onde o metodo mudeOsValores contem o seguinte codigo

public void mudeOsValores(String s, int i) {
  s = "outracoisa";
  i = 2;
}

Ricardo Munhoz Santiago
--- [EMAIL PROTECTED] wrote:
> 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
> 
> -----Original Message-----
> From: Sergio Oliveira Jr.
> [mailto:[EMAIL PROTECTED]] 
> Sent: ter�a-feira, 2 de outubro de 2001 22:56
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED];
> [EMAIL PROTECTED]
> Subject: [java-list] Re: Artigo Java x C#
> 
> Mauro,
> 
> N�o era a minha intens�o te tirar do s�rio. N�o vejo
> problema algum em me 
> engajar num papo com voc� face-to-face. S� estou
> conversando com voc� via 
> email por ser mais conveniente, afinal a tecnologia
> est� a� para facilitar a
> 
> nossa vida, certo?
> 
> Vou continuar falando racionalmente, apesar de n�o
> ver nenhum problema em te
> 
> encontrar para um papo mais descontra�do.
> 
> Alguns absurdos que vc escreveu:
> 
> - Java n�o possui todos os tipos derivados de
> ancestral comum:
> 
> Possui sim... Al�m de possuir tipos primitivos mais
> leves, que por sua vez 
> possuem suas classes equivalentes (Wrappers). Todas
> s�o derivadas da class 
> Object.
> 
> - Java n�o possui Structs:
> 
> Realmente n�o possui a palavra Structs, mas �
> rid�culo simular um C Struct 
> com uma class ou inner class.
> 
> - Java n�o pode passar parametros por referencia:
> 
> Todos os objetos Java s�o passados por referencia.
> Qualquer principiante em 
> Java precisa saber disso.
> 
> - Java n�o possui Propriedades:
> 
> J� ouviu falar em JavaBeans ??? Tb existe uma classe
> Properties que faz isso
> 
> facilmente.
> 
> - Java categoricamente n�o possui eventos nem
> delegate:
> 
> Toda a GUI do Java � orientada a eventos e a
> listeners.
> Java n�o possui ponteiros para fun��es, mas possui
> interfaces que podem 
> facilmente e de uma forma mais elegante e poderosa
> realizar callbacks.
> 
> - Java n�o possui Atributos:
> 
> N�o sei o que vc quiz dizer com isso, mas Java
> possui uma API de Reflection 
> poderos�ssima.
> 
> - Java n�o possui Ponteiros:
> 
> Ainda bem! Referencia = Ponteiro com a excess�o que
> n�o podemos fazer 
> opera��es aritim�ticas com referencias.
> Todo mundo sabe que os ponteiros sempre foram a
> maior fonte de bugs, falhas 
> de seguran�a, v�rus e dores de cabe�a para os
> programadores C.
> 
> - Java n�o possui Forech: loop para varrer arrays e
> cole��es
> 
> D� uma olhada na API Collections. Vc vai ficar
> impressionado com a 
> qualidade, efici�ncia e performance dessa API.
> 
> - Java n�o possui Campos readonly.
> 
> L�gico que possui. Basta utilizar final.
> 
> - Java n�o possui Documenta��o integrada em XML.
> 
> Javadoc serve exatamente para isso que vc sugere
> como vantagem do C#.
> 
> - Java n�o possui Controle sobre "estouro de faixa"
> num�rica
> 
> L�gico que possui. Pelo amor de Deus...
> 
> - Java n�o possui Diretivas de compila��o
> condicional (#ifdef etc)
> 
> N�o precisa pois utilizando o final boolean DEBUG =
> false; o compilador 
> automaticamente otimiza o c�digo compilado retirando
> esse c�digo morto.
> 
> - Java n�o possui Padroniza��o por algum organismo
> internacional
> 
> ??? J� ouviu falar em Enterprise JavaBeans, Servlet,
> JSP, etc. Diversas 
> empresas adotaram essas especifica��es,
> independentemente de imposi��es da 
> Sun. Apenas a M�quina Virtual da microsoft n�o era
> compat�vel com todas as 
> demais, da� a derrota da Microsoft na justi�a.
> 
> - Java n�o Chama APIs do Windows e DLLs
> 
> L�gico que chama via JNI.
> 
> Como voce percebe pelos meus coment�rios acima. Vc
> definitivamente n�o � a 
> pessoa certa para fazer essa compara��o entre C# e
> Java. A n�o ser que vc 
> seja um homem de marketing e n�o da �rea de TI.
> 
> ------------------------------
> Sergio Oliveira Jr.
> Sun Certified Java Programmer
> Desenvolvedor e Consultor Java
> Empresa SmartJava
> ------------------------------
> 
> 
> 
> >From: "Mauro Sant'Anna" <[EMAIL PROTECTED]>
> >To: [EMAIL PROTECTED]
> >Subject: Re: Artigo Java x C#
> >Date: Wed, 03 Oct 2001 00:41:36 +0000
> >
> >Se voc� quizesse "alertar-me", teria fornecido
> exemplos concretos e fatos 
> >ao inv�s de me chamar de ignorante/mentiroso.
> >
> >� incr�vel como as pessoas ficam "valentes" na
> frente de um teclado. 
> >Imagine se voc� teria a coragem de me dizer cara a
> cara o que voc� me 
> >escreveu, depois de uma compara��o C# X Java em um
> eventual semin�rio da 
> >Microsoft - mais ou menos ou equivalente a um
> artigo no site da Microsoft.
> >
> >Mauro
> >
> >>From: "Sergio Oliveira Jr." <[EMAIL PROTECTED]>
> >>To: [EMAIL PROTECTED]
> >>CC: [EMAIL PROTECTED],
> [EMAIL PROTECTED]
> >>Subject: Re: Artigo Java x C#
> >>Date: Wed, 03 Oct 2001 00:35:27 +0000
> >>
> >>Mauro,
> >>
> >>Eu te dei duas op��es:
> >>
> >>1) Vc est� mentindo
> >>2) Vc n�o sabe nada sobre Java
> >>
> >>Se vc optou pela alternativa 1), n�o h� nada que
> eu 
=== message truncated ===


__________________________________________________
Do You Yahoo!?
Listen to your Yahoo! Mail messages from any phone.
http://phone.yahoo.com

------------------------------ 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] 
-------------------------------------------------------------------------

Responder a