De uma olhada no seu codigo. Ele nao funciona.

Nao dah p/ fazer:

i.intValue()++

Alem disso vc esta criando um novo objeto dentro do metodo "inc". Entao,
mesmo que o codigo acima funcionasse, como vc espera trabalhar no objeto
recebido como parametro se vc esta trabalhando em um novo objeto que vc
acabou de criar?

Enfim, nao serve como exemplo de passagem de parametros por referencia.

Experimente o codigo que enviei e vc vera que java passa objetos por
referencia e primitivos por valor.


[]s

Carlos E O Chierici
[EMAIL PROTECTED]


----- Original Message -----
From: "Leonardo Souza Mario Bueno" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, October 03, 2001 5:36 PM
Subject: Re: [java-list] Re: Artigo Java x C#


Nain, nain. Java n�o tem passagem por referencia nem para objetos.

Ex:

    public void inc(Integer i) {
        i = new Integer(i.intValue()++);
        System.out.println("i = " + i); // i = 2
    }

    i = new Integer(1);
    inc(i);
    System.out.println("i = " + i); // i = 1

Resultado:

i = 2
i = 1

Ao chamar inc(i) � passada uma referencia ao objeto i por valor.. ou seja,
mudan�as na referencia dentro do metodo n�o ter�o efeito fora dele..

[]'s,

Leonardo.

----- Original Message -----
From: "Carlos E O Chierici" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, October 03, 2001 1:35 PM
Subject: Re: [java-list] Re: Artigo Java x C#


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


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



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