演示如何在 Java 中获取直接超类信息

java 8object oriented programmingprogramming更新于 2024/11/23 5:36:00

可以使用方法 java.lang.Class.getSuperclass() 获取任何实体(如对象、类、原始类型、接口等)的直接超类信息。

下面给出了一个演示此操作的程序 −

示例

package Test;
import java.lang.*;
class Class1{ }
class Class2 extends Class1{ }
public class Demo {
    public static void main(String args[]) {
        Class1 obj1 = new Class1();
        Class2 obj2 = new Class2();
        Class c;
        c = obj2.getClass();
        System.out.println("对象 obj2 的类是:" + c.getName());
        c = c.getSuperclass();
        System.out.println("对象 obj2 的超类 = " + c.getName());
    }
}

输出

对象 obj2 的类为:Test.Class2
对象 obj2 的超类 = Test.Class1

现在让我们理解上面的程序。

首先定义类 class1 和 class2。演示此操作的代码片段如下 −

class Class1{ }
class Class2 extends Class1{ }

在方法 main() 中,定义类 class1 和 class2 的对象 obj1 和 obj2。然后使用 getClass() 获取对象 obj2 的类,使用 getSuperclass() 获取对象 obj2 的超类。演示此操作的代码片段如下 −

Class1 obj1 = new Class1();
Class2 obj2 = new Class2();
Class c;
c = obj2.getClass();
System.out.println("对象 obj2 的类类型为: " + c.getName());
c = c.getSuperclass();
System.out.println("对象 obj2 的超类 = " + c.getName());

相关文章