Olá,

Objetos e Arrays são passados por referência.
Ai vai um exemplo:
-------------------------------------------
package teste;

public class Class1
{
    String s1;
    public Class1()
    {
        this.s1 = "Valor 1";                          //o valor inicial é
Valor 1
    }

    public void alteraObjeto(Class1 c1)   //esse método recebe uma classe
Class1 por referência
    {
        c1.s1 = "Valor 2";                         //o valor é alterado para
Valor 2
    }
}
--------------------------------------
package teste;

public class Class2
{
    public static void main(String [] args)
    {
        Class1 c1 = new Class1();   //aqui o valor é setado para Valor 1
        Class1 c2 = new Class1();

        System.out.println(c1.s1);     // Valor 1 é exibido
        c2.alteraObjeto(c1);            //aqui o objeto é alterado para
Valor 2, pois é passado por referência
        System.out.println(c1.s1);    // Valor 2 é exibido. A classe Class1
foi alterada por referência
    }
}

---------------------------------------------
----- Original Message -----
From: "Leonardo Hartleben Reinehr" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, May 21, 2003 4:13 PM
Subject: RES: [java-list] Pergunta for Dummies



Olá,

> Ainda acredito que quando a passagem for de objetos será por referência
> e não por valor...

Em Java, parâmetros são sempre passados por valor, independente se o
parâmetro é um objeto ou um tipo primitivo. Faça o teste a seguir que você
vai comprovar isso:

public class Teste {
    public static void main(String[] args) {
        String str = "Valor 1";
        teste(str);
        System.out.println(str);
    }

    public static void teste(String s) {
        s = "Valor 2";
    }
}

O texto que será impresso é "Valor 1".

Veja em http://java.sun.com/docs/books/tutorial/java/javaOO/arguments.html,
no item "Pass by Value", que lá explica direitinho o que acontece na
passagem de parâmetros, e porque os casos que você colocou funcionam. Aqui
na lista mesmo, há algum tempo, essa dúvida apareceu e houve bastante
debate, dê uma olhada no histórico.

Um abraço,
Leonardo

------------------------------ 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
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED]
-------------------------------------------------------------------------




------------------------------ 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
historico: http://www.mail-archive.com/java-list%40soujava.org.br
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a