estou estudando java quem pode tira essa duvida…
como funciona no java a passagem por parametro ea por referencia…
tanto com classes como com metodos …
atenciosamente
D
estou estudando java quem pode tira essa duvida…
como funciona no java a passagem por parametro ea por referencia…
tanto com classes como com metodos …
atenciosamente
D
[quote=Danilo_neco]estou estudando java quem pode tira essa duvida…
como funciona no java a passagem por parametro ea por referencia…
tanto com classes como com metodos …
atenciosamente
D[/quote]
Cara, posso estar enganado, mas acho que não existe isso em Java não.
Certa vez ouvi na faculdade que essa praga só serve para linguagens que só aceitam tipos primitivos como retorno de método, como o Pascal.
Como dizem para mim as vezes, se está precisando disso, tem alguma coisa errada no seu sistema. =)
Abraços
[quote=Danilo_neco]estou estudando java quem pode tira essa duvida…
como funciona no java a passagem por parametro ea por referencia…
tanto com classes como com metodos …
atenciosamente
D[/quote]
O que é passagem por parâmetro?
[quote=malsan][quote=Danilo_neco]estou estudando java quem pode tira essa duvida…
como funciona no java a passagem por parametro ea por referencia…
tanto com classes como com metodos …
atenciosamente
D[/quote]
O que é passagem por parâmetro?[/quote]
Ops… li (leia só-prestei-atenção) na passagem por referência.
Danilo, o termo correto é Passagem de Parâmetro por Valor ou Passagem de Parâmetro por Referência
Abraços
[quote=Danilo_neco]estou estudando java quem pode tira essa duvida…
como funciona no java a passagem por parametro ea por referencia…
tanto com classes como com metodos …
atenciosamente
D[/quote]
No java a passagem eh sempre por referencia, na verdade oq eh passado por parametro eh uma copia da referencia ao seu objeto.
[quote=cdorner][quote=Danilo_neco]estou estudando java quem pode tira essa duvida…
como funciona no java a passagem por parametro ea por referencia…
tanto com classes como com metodos …
atenciosamente
D[/quote]
No java a passagem eh sempre por referencia, na verdade oq eh passado por parametro eh uma copia da referencia ao seu objeto.[/quote]
hein??
Cara, vamos lá… até onde eu sei.
[list]Passagem de Parâmetros por valor: É passado o valor da váriável para o método (função/procedure). Qualquer alteração no parâmetro não altera o valor original para o chamador do método.[/list]
[list]Passagem de Parâmetros por Referência: É passada a referência (endereço de memória onde se encontra a variável) para o método (função/procedure), permitindo assim a sua alteração para o restante da aplicação. [/list]
Até onde eu sei, essa última praga não existe em Java. Bem pode ser que eu desconheça porque eu nunca precisei alterar o valor do parâmetro que é passado para o método.
Abraços.
[quote=celso.martins][quote=cdorner][quote=Danilo_neco]estou estudando java quem pode tira essa duvida…
como funciona no java a passagem por parametro ea por referencia…
tanto com classes como com metodos …
atenciosamente
D[/quote]
No java a passagem eh sempre por referencia, na verdade oq eh passado por parametro eh uma copia da referencia ao seu objeto.[/quote]
hein??
Cara, vamos lá… até onde eu sei.
[list]Passagem de Parâmetros por valor: É passado o valor da váriável para o método (função/procedure). Qualquer alteração no parâmetro não altera o valor original para o chamador do método.[/list]
[list]Passagem de Parâmetros por Referência: É passada a referência (endereço de memória onde se encontra a variável) para o método (função/procedure), permitindo assim a sua alteração para o restante da aplicação. [/list]
Até onde eu sei, essa última praga não existe em Java. Bem pode ser que eu desconheça porque eu nunca precisei alterar o valor do parâmetro que é passado para o método.
Abraços.[/quote]
Não é bem assim! As passagem se dá por cópia de referência. Ou seja: é criada uma outra variável que aponta para o mesmo objeto! Já existem muitas discussões sobre isto no GUJota! Dêem uma olhada neste tópico http://www.guj.com.br/posts/list/78276.java. eu mesmo aprendi bastante com ele!
Um forte abraço a todos!!!
O loko… bom… vou tentar explicar de forma fácil (se eh que eh possivel)
Aconselho a ler os posts dos link’s citados…
Bom… la vamos nós…
Em Java, qndo vc chama um método ou qlqr outra coisa que receba argumentos, esse argumento sempre será uma cópia da variável, para ser mais técnico, uma cópia da região de memória que aquela varíavel representa.
Qndo criamos uma variável primitiva em java, ela será um pedaço de memória e ponto (Não estará apontando para qlqr objeto).
Agora, qndo criamos um variável composta, o seu conteúdo será um endereço de memória que irá apontar para um objeto.
Por isso, que qndo passamos um argumento primitivo para um método ficamos com duas variáveis iguais, ja que a variável é o próprio valor primitivo, o mesmo ocorre para uma variável composta. Então qual a diferença ?
A diferença esta no que representa o valor de uma variável primitiva o o valor de uma variável composta.
int x = 5;
Object o = Integer(5);
“x” significa 5 e ponto. Qndo for copiar x, vc estará copiando o 5 mesmo.
“o” significa 6587674(endereço de memória) que aponta para algum objeto. Qndo vc for copiar “o” vc vai estar copiando seu conteúdo que eh um endereço de memória.
Nossa… nao tem com ser claro para isso com palavras… ^^
Se alguem ainda não entendeu avisa ae que eu faço um desenho e coloco aki para download… ^^
Abraço !