Java Class 类 getEnclosingClass()方法及示例
Class类getEnclosingClass()
方法
getEnclosingClass()方法在java.lang包中可用。
getEnclosingClass()方法用于返回基础类的最近或立即封闭的类。
getEnclosingClass()方法是一个非静态方法,只能通过类对象访问,如果尝试使用类名称访问该方法,则会收到错误消息。
返回Class对象时,getEnclosingClass()方法不会引发异常。
语法:
public Class getEnclosingClass();
参数:
它不接受任何参数。
返回值:
该方法的返回类型为Class,它返回基础类的最近封闭类。
注意:
如果此类没有顶级类别,则返回null。
示例
//Java程序演示示例 //类的ClassgetEnclosingClass()方法 import java.lang.reflect.*; public class GetEnclosingClassOfClass { public GetEnclosingClassOfClass() { //OuterClass在GetEnclosingClassOfClass类的内部 //内部类 //GetEnclosingClassOfClass- class OuterClass { public void outerMethod() { //InnerClass位于OuterClass类的内部,这意味着 //InnerClass是OuterClass的内部类 class InnerClass { public void innerMethod() { System.out.println(getClass().getEnclosingClass()); } } System.out.println(getClass().getEnclosingClass()); //创建一个InnerClass的实例 InnerClass ic = new InnerClass(); ic.innerMethod(); } } //创建一个OuterClass的实例 OuterClass oc = new OuterClass(); oc.outerMethod(); } public static void main(String[] args) { GetEnclosingClassOfClass enclo_class = new GetEnclosingClassOfClass(); } }
输出结果
class GetEnclosingClassOfClass class GetEnclosingClassOfClass$1OuterClass