Java 类 getEnclosingConstructor() 方法



描述

java Class getEnclosingConstructor() 方法返回一个 Constructor 对象,该对象表示底层类的紧邻封闭构造函数,如果此 Class 对象表示构造函数内的局部类或匿名类,则返回 null。

声明

以下是Java Class getEnclosingConstructor() 方法的声明

public Constructor<?> getEnclosingConstructor()

参数

返回值

如果该类是局部类或匿名类,则此方法返回底层类的紧邻封闭构造函数,否则返回 null。

异常

获取底层类的封闭类示例

以下示例演示了 java.lang.Class.getEnclosingConstructor() 方法的用法。在这个程序中,我们创建了一个 Class ClassDemo。在 ClassDemo 构造函数中,创建了一个名为 ClassA 的新类。在主方法中,我们检索了 ClassDemo 的类,然后使用 getEnclosingConstructor() 方法接收并打印封闭构造函数。

package com.tutorialspoint;

public class ClassDemo {

   public Object c;

   public ClassDemo( ) {
      class ClassA{ };
      c = new ClassA( );
   }

   public Object ClassAObject( ) {
      class ClassA{ };
      return new ClassA( );
   }

   public static void main(String[] args) {
     
      Class cls;
      cls = (new ClassDemo()).c.getClass();

      System.out.print("getEnclosingConstructor() = ");
      System.out.println(cls.getEnclosingConstructor());
   }
} 

输出

让我们编译并运行上述程序,这将产生以下结果:

getEnclosingConstructor() = public com.tutorialspoint.ClassDemo()

获取 ArrayList 类的封闭构造函数示例

以下示例演示了 java.lang.Class.getEnclosingConstructor() 方法的用法。在这个程序中,我们使用了 ArrayList 的类。然后使用 getEnclosingConstructor() 检查并打印封闭构造函数。

package com.tutorialspoint;

import java.util.ArrayList;

public class ClassDemo {
   public static void main(String[] args) {
      Class cls = ArrayList.class;
      
      System.out.println(cls.getEnclosingConstructor());
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

null

获取 Thread 类的封闭构造函数示例

以下示例演示了 java.lang.Class.getEnclosingConstructor() 方法的用法。在这个程序中,我们使用了 Thread 的类。然后使用 getEnclosingConstructor() 检查并打印封闭构造函数。

package com.tutorialspoint;

public class ClassDemo {
   public static void main(String[] args) {
      Class cls = Thread.class;
      
      System.out.println(cls.getEnclosingConstructor());
   }
}

输出

让我们编译并运行上述程序,这将产生以下结果:

null
java_lang_class.htm
广告
© . All rights reserved.