Você está aqui: Java ::: Classes e Componentes ::: JComponent |
Java Avançado - Como testar se uma classe herda de JComponentQuantidade de visualizações: 8788 vezes |
|
Nesta dica mostrarei como podemos tirar proveito dos métodos getClass(), getSuperclass() e getName() da classe Class para verificarmos se uma determinada classe herda da classe JComponent. Embora este exemplo busque relacionar controles do Java Swing, a técnica usada pode ser aplicada em qualquer classe da linguagem Java. Veja o código completo: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
package arquivodecodigos;
import javax.swing.*;
public class Estudos{
public static void main(String args[]){
// verifica se JLabel herda de JComponent
JLabel label = new JLabel("Teste");
if(herdaJComponent(label)){
System.out.println("JLabel herda de JComponent");
}
else{
System.out.println(
"JLabel não herda de JComponent");
}
// verifica se Timer herda de JComponent
java.util.Timer timer = new java.util.Timer();
if(herdaJComponent(timer)){
System.out.println(
"java.util.Timer herda de JComponent");
}
else{
System.out.println(
"java.util.Timer não herda de JComponent");
}
System.exit(0);
}
static boolean herdaJComponent(Object obj){
Class cls = obj.getClass();
Class superclass = cls.getSuperclass();
while(superclass != null){
String className = superclass.getName();
if(className.equals("javax.swing.JComponent")){
return true;
}
cls = superclass;
superclass = cls.getSuperclass();
}
return false;
}
}
Ao executarmos este código nós teremos o seguinte resultado: JLabel herda de JComponent java.util.Timer não herda de JComponent |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







