6.查看内部类信息

6.查看内部类信息,第1张

6.查看内部类信息

下面学习如何获得一个类的内部类的信息
关键方法

getDeclaredClasses();此方法用于获得一个类的内部类的Class数组

实例:

import java.lang.reflect.Modifier;
import java.lang.reflect.Type;

public class NestedClassInformation {
    public static void main(String[] args) throws ClassNotFoundException {
        Class cls = Class.forName("java.awt.geom.Point2D");
        // 获得代表内部类的Class对象组成的数组
        Class[] classes = cls.getDeclaredClasses();
        // 遍历Class对象数组
        for (Class clazz : classes) {
            System.out.println("类的标准名称:" + clazz.getCanonicalName());
            System.out.println("类的修饰符:" + Modifier.toString(clazz.getModifiers()));
            Type[] interfaces = clazz.getGenericInterfaces();// 获得所有泛型接口
            System.out.println("类所实现的接口:");
            if (interfaces.length != 0) {// 如果泛型接口个数不是0则输出
                for (Type type : interfaces) {
                    System.out.println("t" + type);
                }
            } else {
                System.out.println("t" + "空");
            }
            // 获得直接父类
            Type superClass = clazz.getGenericSuperclass();
            System.out.print("类的直接继承类:");
            if (superClass != null) {// 如果直接父类不是Object就输出
                System.out.println(superClass);
            } else {
                System.out.println("空");
            }
        }
    }
}

运行结果:

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5608848.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存