Java反射机制demo —获取一个类的父类和实现的接口

1,Java反射机制得到一个类的父类

使用Class类中的getSuperClass()方法能够得到一个类的父类

如果此 Class 表示 Object 类、一个接口、一个基本类型或 void,则返回 null。如果此对象表示一个数组类,则返回表示该 Object 类的 Class 对象。

测试代码

在这里插入图片描述
在这里插入图片描述
package com.aaron.reflect;

public class Demo4 {
public static void main(String[] args) {
Class<?> c = Integer.class;
System.out.println(“Integer的父类是:”+c.getSuperclass());

    c = Number.class;
    System.out.println("Number的父类是:"+c.getSuperclass());
     
    c = Object.class;
    System.out.println("Object的父类是:"+c.getSuperclass());
}

}

Integer的父类是:class java.lang.Number
Number的父类是:class java.lang.Object
Object的父类是:null

由于Java没有多继承,一个类最多只能有一个父类,因此返回类型并不是一个数组。

2,Java反射机制返回一个类实现的接口

当我们开发一个接口,并用一个类去实现它,我们看到某个类,就知道它实现了对应的什么接口,但是机器本身得到一个类时,并不知道它实现的接口是什么样子。通过反射机制,可以取到某个类实现的接口的Class对象,从而可以探查这个接口内部的结构。

本文中给出了一个简单的Demo。

在这里插入图片描述

然后,定义一个类去实现这个接口在这里插入图片描述接口和实现类中都只有一个方法。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq892628217/article/details/86891652