Cast em Null?? RegularExpression.java  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
Tiago Farias
JavaChild
[Avatar]

Membro desde: 24/02/2008 16:18:39
Mensagens: 109
Localização: Recife-PE
Offline

Ae galera!

Tava olhando o código da classe RegularExpression dentro do rt.jar e me deparei com um '(Match)null'. Assim:



Gostaria de saber qual o valor semântico disso(se é que existe algum) e tb a razão provável pela qual o programador/designer da classe decidiu fazer algo assim.

[]s.

SCJP 6
SCWCD 5
Bacharel em Ciência da Computação - UFPE
http://tiagodev.wordpress.com


- What does a insomniac, agnostic and dislexic man do at night?
- He contemplates about the existence of an All-Mighty Dog.
maschiojv
JavaChild
[Avatar]

Membro desde: 27/02/2007 18:29:37
Mensagens: 119
Offline

Pode ser que além do método matches(char[], int, int, Match) exista um com a assinatura quase igual, como matches(char[], int, int, String) por exemplo. Como ele está passando null, o compilador não sabe qual dos dois métodos você quer usar, dai o cast, pra dizer que vc quer usar o que recebe Match.

Tiago Farias
JavaChild
[Avatar]

Membro desde: 24/02/2008 16:18:39
Mensagens: 109
Localização: Recife-PE
Offline

Boa explicação. Mas não tem outro método matches com a mesma assinatura e outro tipo no último param. Mas a resposta foi realmente boa. Tipo, apesar de não existir um matches assim AGORA, pode existir no futuro. Daí a preocupação do programador em deixar o código mais funcional pra alguma utilização no futuro(até mesmo por herança...).

Mas acho q eh isso mesmo...

Vlw!

SCJP 6
SCWCD 5
Bacharel em Ciência da Computação - UFPE
http://tiagodev.wordpress.com


- What does a insomniac, agnostic and dislexic man do at night?
- He contemplates about the existence of an All-Mighty Dog.
thiago.correa
GUJ Master
[Avatar]

Membro desde: 26/03/2006 18:54:30
Mensagens: 1861
Offline

Como assim não existe um método matches overloaded???!

----> public boolean matches(char[] target, int start, int end)

ele deve estar usando o (Macthes) null para o compilador não pensar que é uma chamada recursiva! Conforme a bela explicação do colega maschiojv

---
"Se não puder ajudar, atrapalhe, afinal de contas o importante é participar!"
Thiago
[MSN]
Tiago Farias
JavaChild
[Avatar]

Membro desde: 24/02/2008 16:18:39
Mensagens: 109
Localização: Recife-PE
Offline

Não foi oq eu quis dizer. EXISTE um matches overloaded, mas não com 4 parâmetros e o último não sendo do tipo Match. Foi oq o colega mencionou como sugestão. =]

SCJP 6
SCWCD 5
Bacharel em Ciência da Computação - UFPE
http://tiagodev.wordpress.com


- What does a insomniac, agnostic and dislexic man do at night?
- He contemplates about the existence of an All-Mighty Dog.
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team