Você está aqui: Java ::: Reflection (introspecção) e RTI (Runtime Type Information) ::: Passos Iniciais |
Java Reflection - Como exibir os nomes de todas as superclasses de uma determinada classe usando introspecção em JavaQuantidade de visualizações: 7884 vezes |
Nesta dica veremos como tirar proveito dos métodos getClass(), getName() e getSuperclass() da classe Class da linguagem Java para exibirmos todas as super classes de um determinada classe, até chegarmos à super classe mais alta na hierarquia, ou seja, a classe Object. Note como usamos um objeto da classe Stack para criarmos uma estrutura de dados do tipo pilha que nos permite obter os nomes das super classes e depois exibir os mesmos na ordem inversa. Veja o código completo para o exemplo: package arquivodecodigos; import java.util.Stack; import javax.swing.*; public class Estudos{ // vamos precisar de uma pilha aqui static Stack<String> pilha = new Stack(); public static void main(String args[]){ // Exibe todas as superclasses de JPanel JPanel panel = new JPanel(); obterSuperclasses(panel); // agora vamos exibir os resultados na ordem // contrária que eles foram obtidos int cont = 0; while(pilha.size() > 0){ // insere espaços antes String ident = ""; for(int i = 0; i < cont; i++){ ident = ident + " "; } System.out.println(ident + pilha.pop()); cont++; } System.exit(0); } static void obterSuperclasses(Object obj){ // vamos adicionar este valor na pilha Ao executarmos este código Java nós teremos o seguinte resultado: java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JPanel |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
VB.NET - Como retornar a versão do .NET a partir de seus códigos VB.NET usando Environment.Version.ToString() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |