Não estou querendo te chamar de louco, mas acho que voce deveria ter testado antes de dizer que "sempre funcionou" errado. Por voce mesmo nao testa?
public class ProvaDaPassagemPorValor { public static void main(String [] s) { String s = "test"; int i = 1; mudeOsValores(s, i); System.out.println(s + i); } private static void mudeOsValores(String s, int i) { s = "outroValor"; i = 2; } } Ricardo Munhoz Santiago --- Wild Boar Wannabe <[EMAIL PROTECTED]> wrote: > > Perae !!! Eh claro que refletira as mudancas !!! > Apos > ser chamado o metodo mudeOsValores() o inteiro e a > String mandados por parametro terao seus valores > mudados !!! Ou entao eu tou louco !!! Por que sempre > foi assim pra mim ... > > --- Ricardo Santiago <[EMAIL PROTECTED]> > escreveu: > > > 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 > === message truncated === __________________________________________________ Do You Yahoo!? NEW from Yahoo! GeoCities - quick and easy web site hosting, just $8.95/month. http://geocities.yahoo.com/ps/info1 ------------------------------ 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] -------------------------------------------------------------------------