Class getDeclaredConstructor() method in Java with Examples - GeeksforGeeks

16 Dec, 2019
The getDeclaredConstructor() method of java.lang.Class class is used to get the specified constructor of this class with the specified parameter type. The method returns the specified constructor of this class in the form of Constructor object.
Syntax:
public Constructor<T>
       getDeclaredConstructor(Class[] parameterType)
       throws NoSuchMethodException, SecurityException

Parameter: This constructor accepts a parameters parameterType which is the array of parameter type for the specified constructor.
Return Value: This method returns the specified constructor of this class in the form of Constructor objects.
Exception This method throws:
NoSuchMethodException if a constructor with the specified name is not found.
SecurityException if a security manager is present and the security conditions are not met.Below programs demonstrate the getDeclaredConstructor() method.Example 1:// Java program to demonstrate// getDeclaredConstructor() method  import java.util.*;  public class Test {      public Test() {}      public static void main(String[] args)        throws ClassNotFoundException, NoSuchMethodException    {          // returns the Class object for this class        Class myClass = Class.forName("Test");          System.out.println("Class represented by myClass: "                           + myClass.toString());          Class[] parameterType = null;          // Get the constructor of myClass        // using getDeclaredConstructor() method        System.out.println(            "Constructor of myClass: "            + myClass.getDeclaredConstructor(parameterType));    }}Output:Class represented by myClass: class Test
Constructor of myClass: public Test()
Example 2:// Java program to demonstrate// getDeclaredConstructor() constructor  import java.util.*;  class Main {      private Main() {}      public static void main(String[] args)        throws ClassNotFoundException, NoSuchMethodException    {          // returns the Class object for this class        Class myClass = Class.forName("Main");          System.out.println("Class represented by myClass: "                           + myClass.toString());          Class[] parameterType = new Class[1];        parameterType[0] = Long.class;          try {            // Get the constructor of myClass            // using getDeclaredConstructor() method            System.out.println(                "Constructor of myClass: "                + myClass.getDeclaredConstructor(parameterType));        }        catch (Exception e) {            System.out.println(e);        }    }}Output:Class represented by myClass: class Main
java.lang.NoSuchMethodException: Main.(java.lang.Long)
Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#getDeclaredConstructor-java.lang.Class...-My Personal Notes
arrow_drop_upSave
Below programs demonstrate the getDeclaredConstructor() method.
Example 1:
// Java program to demonstrate// getDeclaredConstructor() method  import java.util.*;  public class Test {      public Test() {}      public static void main(String[] args)        throws ClassNotFoundException, NoSuchMethodException    {          // returns the Class object for this class        Class myClass = Class.forName("Test");          System.out.println("Class represented by myClass: "                           + myClass.toString());          Class[] parameterType = null;          // Get the constructor of myClass        // using getDeclaredConstructor() method        System.out.println(            "Constructor of myClass: "            + myClass.getDeclaredConstructor(parameterType));    }}
Class represented by myClass: class Test
Constructor of myClass: public Test()

Example 2:
// Java program to demonstrate// getDeclaredConstructor() constructor  import java.util.*;  class Main {      private Main() {}      public static void main(String[] args)        throws ClassNotFoundException, NoSuchMethodException    {          // returns the Class object for this class        Class myClass = Class.forName("Main");          System.out.println("Class represented by myClass: "                           + myClass.toString());          Class[] parameterType = new Class[1];        parameterType[0] = Long.class;          try {            // Get the constructor of myClass            // using getDeclaredConstructor() method            System.out.println(                "Constructor of myClass: "                + myClass.getDeclaredConstructor(parameterType));        }        catch (Exception e) {            System.out.println(e);        }    }}
Class represented by myClass: class Main
java.lang.NoSuchMethodException: Main.(java.lang.Long)

Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#getDeclaredConstructor-java.lang.Class...-
Java-Functions
Java-lang package
Java.lang.Class
Java
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Stream In Java
Different ways of Reading a text file in Java
Constructors in Java
Exceptions in Java
Functional Interfaces in Java
Generics in Java
Comparator Interface in Java with Examples
HashMap get() Method in Java
Introduction to Java
Difference between Abstract Class and Interface in Java