📅  最后修改于: 2023-12-03 15:02:03.098000             🧑  作者: Mango
在 Java 中,getEnclosingClass() 方法是用来获取当前类的封闭类(Enclosing Class)的,也就是包含当前类的最里层类。
public Class<?> getEnclosingClass()
public class OuterClass {
private int x = 1;
public class InnerClass {
public int getX() {
return x;
}
public Class<?> getEnclosing() {
return OuterClass.this.getClass();
}
}
}
public class Test {
public static void main(String[] args) {
OuterClass outer = new OuterClass();
OuterClass.InnerClass inner = outer.new InnerClass();
Class<?> enclosingClass = inner.getEnclosing();
System.out.println("Enclosing class: " + enclosingClass.getName());
}
}
输出结果:
Enclosing class: OuterClass
在上面的示例中,我们定义了一个名为 OuterClass 的类,其中包含一个名为 InnerClass 的内部类。InnerClass 类实现了一个方法 getEnclosing(),它返回 OuterClass 类的 Class 对象。在 Test 类中,我们创建了一个 OuterClass 对象和一个 InnerClass 对象。我们调用 InnerClass 的 getEnclosing() 方法来获取封闭类,然后打印出了该类的名称。
上面的代码段通过Java语言编写,使用了Java中的类 getEnclosingClass() 方法。