位置:首页 > Java技术 > java.lang > java.lang.Class.getDeclaredConstructors()方法实例

java.lang.Class.getDeclaredConstructors()方法实例

java.lang.Class.getDeclaredConstructors() 方法返回所有Class对象已表示类声明的构造函数的数组。这些都是公开的,受保护,默认(包)访问和私有构造函数。

此方法返回一个长度为0的数组,如果此Class对象表示一个接口,基本类型,数组类或void。

声明

以下是java.lang.Class.getDeclaredConstructors()方法的声明

public Constructor<?>[] getDeclaredConstructors() throws SecurityException 

参数

  • NA

返回值

此方法返回一个代表这个类的所有构造函数声明构造函数对象的数组。

异常

  • SecurityException -- 如果安全管理存在。

例子

下面的例子显示java.lang.Class.getDeclaredConstructors()方法的使用。

package com.yiibai;

import java.lang.reflect.*;

public class ClassDemo {

   public static void main(String[] args) {

     ClassDemo cls = new ClassDemo();
     Class c = cls.getClass();

     // constructors
     Constructor[] ct = c.getDeclaredConstructors();
     for(int i = 0; i < ct.length; i++) {
        System.out.println("Constructor found: " + ct[i].toString());
     }
   }

   private ClassDemo() {
      System.out.println("no argument constructor");
   }

   public ClassDemo(Double d, Long l) {
      this.d = d;
      this.l = l;
   }

   Double d = new Double(3.9d);
   Long l = new Long(7687);
} 

让我们来编译和运行上面的程序,这将产生以下结果:

no argument constructor
Constructor found: private ClassDemo()
Constructor found: public ClassDemo(java.lang.Double,java.lang.Long)