Comparar Types das classes  XML
Índice dos Fóruns » Java Básico
Autor Mensagem
reinaldo_mt
HelloWorld
[Avatar]

Membro desde: 21/03/2005 10:38:07
Mensagens: 10
Offline

Olá a todos,
Preciso verificar se um objeto é de um determinado "tipo", atualmente estou fazendo a comparação usando o nome do tipo da classe em String.
O código funciona, mas gostaria de saber se estou fazendo certo e se existe uma maneira mais eficiente do que comparar como strings.

Segue o código.


Até mais.

"Nunca ande pelo caminho traçado, pois ele conduz somente até onde os outros foram."Alexandre Graham Bell
markin1
JavaEvangelist

Membro desde: 07/12/2008 20:58:59
Mensagens: 494
Localização: São Paulo
Offline

Acho que o instanceof resolve o teu problema, dá uma olhada: http://www.devx.com/tips/Tip/14642

Quem é o juíz?
[Email]
aeciovc
Java Ninja

Membro desde: 28/02/2008 21:15:34
Mensagens: 267
Localização: Recife
Offline

pra comparar instâncias de classes o instanceof serve (como o nome mesmo sugere)!

This message was edited 1 time. Last update was at 18/08/2010 11:08:13


Aécio Costa
www.aeciocosta.com.br
[WWW] [MSN]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Se você usa reflection, você pode usar o método isAcessibleFrom. A vantagem é que ele também testa hierarquias.

Outra forma é fazer o teste da classe diretamente.



Comparar pelo SimpleName é uma péssima idéia. Classes em pacotes diferentes podem ter o mesmo SimpleName. Como é o caso da java.util.Timer e javax.swing.Timer

This message was edited 2 times. Last update was at 18/08/2010 11:36:01


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
reinaldo_mt
HelloWorld
[Avatar]

Membro desde: 21/03/2005 10:38:07
Mensagens: 10
Offline

ViniGodoy,
É exatamente o que eu estou precisando.

Valeu, Obrigado!!!

"Nunca ande pelo caminho traçado, pois ele conduz somente até onde os outros foram."Alexandre Graham Bell
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Só corrigindo, o método chama-se isAssignableFrom e não isAcessibleFrom. E é uma espécie de instanceOf entre objetos do tipo Class.

This message was edited 1 time. Last update was at 18/08/2010 13:53:18


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
jzaires
JavaChild
[Avatar]

Membro desde: 13/03/2008 09:59:18
Mensagens: 127
Localização: Praia Grande - SP
Offline

Já que vocês está usando reflection, dá uma olhada nesse site:

http://tutorials.jenkov.com/java-reflection/index.html

Em inglês, mas muito bom.

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