java.lang.Class.getEnclosingClass()%uA0方法返回直接封闭类的底层类。如果这个类是一个顶级类此方法返回null。
声明
以下是java.lang.Class.getEnclosingClass()方法的声明
public Class<?> getEnclosingClass()
参数
-
NA
返回值
此方法返回直接封闭类的底层类。
异常
-
NA
例子
下面的例子显示java.lang.Class.getEnclosingClass()方法的使用。
package com.yiibai import java.lang.* public class ClassDemo { // constructor public ClassDemo() { // class Outer as inner class for class ClassDemo class Outer { public void show() { // inner class of Class Outer class Inner { public void show() { System.out.print(getClass().getName() + " inner in...") System.out.println(getClass().getEnclosingClass()) } } System.out.print(getClass().getName() + " inner in...") System.out.println(getClass().getEnclosingClass()) // inner class show() function Inner i = new Inner() i.show() } } // outer class show() function Outer o = new Outer() o.show() } public static void main(String[] args) { ClassDemo cls = new ClassDemo() } }
让我们来编译和运行上面的程序,这将产生以下结果:
ClassDemo$1Outer inner in...class ClassDemo ClassDemo$1Outer$1Inner inner in...class ClassDemo$1Outer