O que significa "String..."  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
Ehb
JavaChild

Membro desde: 05/06/2006 04:54:18
Mensagens: 106
Offline

Eu estava lendo o código fonte da classe ValueItem to [i]AjaxTags e deparei me com a seguinte expressão



O que significa "String..."?

Obrigado pelo seu tempo

This message was edited 1 time. Last update was at 16/10/2008 10:52:32

[Email]
thiago.filadelfo
Virtual Machine Man
[Avatar]

Membro desde: 07/07/2007 00:32:26
Mensagens: 592
Localização: São Paulo
Offline

olá
String significa um tipo de variável.. no seu caso seria o tipo de variável
de entrada do seu método


Flwss

THIAGO RIBEIRO FILADELFO
[MSN]
Jair Rillo Junior
Moderador
[Avatar]

Membro desde: 29/04/2003 21:19:53
Mensagens: 2527
Localização: São Paulo / Campinas
Offline

http://www.guj.com.br/posts/list/32457.java

Jair Rillo Junior

http://www.jairrillo.com/blog | Twitter | SCJA, SCJP, SCWCD, SCBCD, IBM SOA Associate
vtr.oliveira
JavaChild

Membro desde: 19/02/2008 09:25:33
Mensagens: 128
Localização: SP
Offline

Essa String com "..." que vc está perguntando é um recurso do Java 5 chamado de var args (na verdade, não lembro como se escreve)

O recurso varargs é bastante útil qdo vamos sobreescrever métodos com a mesma lista de parâmetros.

Supondo que eu tenha três métodos com lista de parâmetros double:



Para executá-los, eu faria da seguinte forma:


Repare, que todos os métodos tem a mesma funcionalidade. E é justamente aí que entra o varargs!
Ele permite definirmos um método sem especificar a quantidade de parâmetros passados pra ele...

Substituindo os três métodos por apenas um método usando o varargs, ficaria da seguinte forma:


Deste modo, poderíamos fazer diversas chamadas desse método, passando listas de parâmetros diferentes:
Exemplo:



Vitor Ribeiro de Oliveira
[Email] [MSN]
Ehb
JavaChild

Membro desde: 05/06/2006 04:54:18
Mensagens: 106
Offline

Obrigado vtr , entendi perfeitamente , a minha dúvida era mesmo em relação à ... e não à class String. Realmente faz muito sentido usar o .... Antigamente eu usava um array de Strings para conseguir isso.

E já agora , sabe-me explicar isto class Item<T> { e mais tarde aparece isto public class ValueItem extends Item<ArrayList<String>> .

Não o porquê de parametrizar uma classe.

Desde já agradeço

This message was edited 2 times. Last update was at 17/10/2008 09:43:20

[Email]
vtr.oliveira
JavaChild

Membro desde: 19/02/2008 09:25:33
Mensagens: 128
Localização: SP
Offline

Acho que não entendi sua pergunta...

Você quer saber pra que serve o "<T>" ?

Vitor Ribeiro de Oliveira
[Email] [MSN]
Ehb
JavaChild

Membro desde: 05/06/2006 04:54:18
Mensagens: 106
Offline

vtr.oliveira wrote:Acho que não entendi sua pergunta...

Você quer saber pra que serve o "<T>" ?


Eu entendo que o <T> significa parametrizar um tipo , eu entendo quando ele é usado assim List<T> ou assim public <T> String funcao(T a). Mas parametrizar uma classe é um pouco estranho .

Para simplificar as coisas ,será que pode me explicar cada palavra das expressões
1.class Item<T>
2.public class ValueItem extends Item<ArrayList<String>>


Por exemplo , na expressão um class é uma palavra reservada que indica que vamos definir uma nova classe , Item é o nome da nova classe , e o <T> ?

Sei que o <T> se refere a genéricos , mas o Item com <T> é que eu não entendo .

Obrigado pelo vosso tempo

This message was edited 1 time. Last update was at 18/10/2008 02:57:00

[Email]
 
Índice dos Fóruns » Java Básico
Ir para:   
Powered by JForum 2.1.8 © JForum Team