Ei Leonardo, eu sei o que estou falando. E digo que Java usa passagem por valor. O Sven que est� tentando provar que � por refer�ncia. J� indiquei alguns links apontando para o JDC(Java Developement Connection) onde � mostrada claramente essa distin��o.
N�o tenho que provar nada, apenas digo  que Java usa passagem por valor.
 
Lincolm Ferreira de Aguiar
WebMaster - QueroProgramar
[EMAIL PROTECTED]
 
----- Original Message -----
Sent: Monday, February 04, 2002 9:46 AM
Subject: RES: Re: RES: [java-list] Como � feita a passagem de par�metros em Java?

A �nica resposta certa � : A passagem de parametros � feita somente por valor.
 
N�o adianta consultar a especifica��o da linguagem.. procure alguma explica��o conceitual sobre passagem por parametro e por valor pois creio que voc� e o Lincolm est�o falando a mesma coisa mas cada um chama de um nome.
 
[]'s,
 
Leonardo.
-----Mensagem original-----
De: Sven van �t Veer [mailto:[EMAIL PROTECTED]]
Enviada em: Segunda-feira, 4 de Fevereiro de 2002 07:25
Para: [EMAIL PROTECTED]
Assunto: Re: Re: RES: [java-list] Como � feita a passagem de par�metros em Java?

Lincolm,

A �nica resposta certo �:

Em java passagem de parametros de tipos primitivos � por valor e de Objetos � por referencia. No cado de Objetos � passado a referencia do Objeto na vm. Ao entrar no metodo o VM cria uma copia do objeto. Dentro do metodo este c�pia � usado igual qualquer outro variavel local. Se n�o for bastante claro, ver a 'java language specification',

Sven

Lincolm Ferreira de Aguiar wrote:
012901c1a8b9$a5d99200$[EMAIL PROTECTED] type="cite">
Ol� F�bio,

Tudo bem. Olha, ainda n�o ficou muito claro para mim o que voc� disse sobre a passagem de par�metros em Java. Fiz um exemplo com uma
matriz, e a matriz mesmo foi alterada. Quem disse isso foi um usu�rio aqui da lista, que no momento n�o lembro o nome dele. Como
pode ser? Veja o c�digo:

public class Passagem extends Object {

Object names[][] = new Object[1][2];

public Passagem(){

names[0][0] = "Lincolm";
names[0][1] = "Ferreira";
objects(names);

for(int x=0; x<=names.length - 1; x++){
for(int y=0; y<=names[x].length - 1; y++){
System.out.println(names[x][y]);
}
}

}

public static void main(String args[]){

Passagem ps = new Passagem();

}

public void objects(Object[][] n){

n[0][1] = "Aguiar";

}

}

Se comentar a chamada de objects(names) o resultado ser�:
Lincolm
Ferreira

No entanto, se remover os coment�rios a sa�da ser�:
Lincolm
Aguiar

Sinceramente, poderia me explicar.

Lincolm Ferreira de Aguiar
WebMaster - QueroProgramar
[EMAIL PROTECTED]

www.geocities.com/lincolmf

----- Original Message -----
From: <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Monday, January 28, 2002 8:03 PM
Subject: RE: RES: [java-list] Como � feita a passagem de par�metros em Java?


Quer ter seu pr�prio endere�o na Internet?
Garanta j� o seu e ainda ganhe cinco e-mails personalizados.
Dom�niosBOL - http://dominios.bol.com.br





Amigos,

Como esse assunto est� sendo bastante discutido, vou me meter no meio
tamb�m e tentar esclarecer...
O Java trata a passagem de par�metros de forma diferente para tipos
primitivos e objetos, mas sempre � passada por valor.
Funciona mais ou menos assim (vou usar o exemplo do curso de Java da
Sun, que fiz a semana passada):

Se voc� passa um tipo primitivo para um m�todo assim:
...
int i = 10;
this.alteraValor(i)
System.out.print(i) // Imprime o valor 10
...

alteraValor(int j){
j = 15;
}
O que acontece? O Java entrega uma c�pia do conte�do de i para o m�todo.
S&oac ute; que o conte�do de i � igual a 10.
J� se fizermos a mesma coisa com um objeto, vejam s�:

...
MyDate data = "new" MyDate("28/01/2002");
this.alteraValor(data);
System.out.print(data); // Imprime o valor "28/01/2002";
this.alteraValor2(data);
System.out.print(data); // Imprime o valor "28/02/2002";
...

alteraValor(MyDate t){
t = new MyDate("31/07/2002");
}

alteraValor2(MyDate t){
t.setMes("02");
}

Porqu� no primeiro m�todo o valor n�o se alterou, mas no segundo sim?
Funciona da mesma maneira que a passagem de um tipo primitivo. O
conte�do da vari�vel data n�o � o objeto MyDate, e sim o endere�o da
mem�ria onde est� o objeto MyDate. E, da mesma maneira como acontece com
o tipo primitivo, esse valor (endere�o do objeto) n�o pode ser alterado
(tentamos alterar essa refer�ncia com o comando new MyDate).
J� o conte�do do objeto pode ser alterado tranq�ilamente, pois ele fica
em outra parte da mem�ria.

Quaisquer d�vidas, perguntem....

[]

F�bio Jorge Corr�a
Citibank e-Business Solutions
Phone: 55 11 3457.0675
Fax: 55 11 3457.0652
[EMAIL PROTECTED]


-----Original Message-----
From: sven [mailto:[EMAIL PROTECTED]]
Sent: sexta-feira, 28 de dezembro de 2001 12:51
To: java-list
Cc: sven
Subject: Re: RES: [java-list] Como � feita a passasgem de par�metros
em Java?



Um bom engano...

Em Java, parametros s�o passados por referencia, mas dentro da fun��o
uma copia � usado.

ANDRE MOURA BARRETO wrote:


Vc est� equivocado.
Java n�o possue passagem de Par�metro por refer�ncia.
Somente por valor, ou seja, uma c�pia � passada.

-----Mensagem original-----
De: Adalberto Zanata [Forum] [ mailto:[EMAIL PROTECTED]]
Enviada em: Thursday, January 24, 2002 8:16 PM
Para: [EMAIL PROTECTED]
Assunto: Re: [java-list] Como � feita a passasgem de par�metros em
Java?



Adalberto Zanata
[ [EMAIL PROTECTED]]
[ http://www.espacoreverso.com.br/a.zanata]

---- - Original Message -----
From: "Paulo Henrique Castro" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, January 24, 2002 11:26 AM
Subject: Re: [java-list] Como � feita a passasgem de par�metros em
Java?




Existe uma maneira de diferenciar as passagens de par�metros em
Java, por
valor e por refer�ncia?



Ateh onde sei a passagem de parametros em Java eh somente
por
referencia!!

[]s

PH


--
"Live fast, die old, and make very sure everyone knows you were
there." -
Alan Cox


------------------------------ 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&aa cute;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://w ww.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para
[EMAIL PROTECTED]
------------------------------------------------------------------
-------



-- "'You guys (at Microsoft) still don't get it,' because it's sort
of Java with reliability, productivity and security deleted."
James Gosling








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


-- 
"'You guys (at Microsoft) still don't get it,' 
because it's sort of Java with reliability, productivity and security deleted."

					James Gosling

Responder a