## org.apache.xml.utils.synthetic.reflection
Class Constructor

    java.lang.Object
      org.apache.xml.utils.synthetic.reflection.EntryPoint
          org.apache.xml.utils.synthetic.reflection.Constructor

All Implemented Interfaces:
  Member

public class Constructor
extends EntryPoint
implements Member

Constructor provides information about, and access to, a single constructor for a class. Constructor permits widening conversions to occur when matching the actual parameters to newInstance() with the underlying constructor's formal parameters, but throws an IllegalArgumentException if a narrowing conversion would occur.

Usage:
  **For internal use only**

Constructor Summary
`Constructor(Class declaringclass)` Insert the method's description here.
`Constructor(java.lang.reflect.Constructor realconstructor)` Insert the method's description here.
`Constructor(java.lang.reflect.Constructor ctor, Class declaringclass)` Insert the method's description here.

Method Summary
`int` `hashCode()` Returns a hashcode for this Constructor.
`java.lang.Object` `newInstance(java.lang.Object[] initargs)` Uses the constructor represented by this Constructor object to create and initialize a new instance of the constructor's declaring class, with the specified initialization parameters.

Methods inherited from class org.apache.xml.utils.synthetic.reflection.EntryPoint
`addExceptionType, addParameter, equals, getBody, getDeclaringClass, getExceptionTypes, getLanguage, getModifiers, getName, getParameterNames, getParameterTypes, getReturnType, setBody, setDeclaringClass, setModifiers, setName, toSource, toString`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.apache.xml.utils.synthetic.reflection.Member
`getDeclaringClass, getModifiers, setDeclaringClass, setModifiers`

Constructor Detail

### Constructor

    public Constructor(Class declaringclass)

  Insert the method's description here.

  Creation date: (12-27-99 2:31:39 PM)

Parameters:
  `declaringclass` -

### Constructor

    public Constructor(java.lang.reflect.Constructor ctor,
                       Class declaringclass)

  Insert the method's description here.

  Creation date: (12-27-99 2:31:39 PM)

Parameters:
  `ctor` -
  `declaringclass` -

### Constructor

    public Constructor(java.lang.reflect.Constructor realconstructor)

  Insert the method's description here.

  Creation date: (12-27-99 2:31:39 PM)

Parameters:
  `realconstructor` -

Method Detail

### hashCode

    public int hashCode()

  Returns a hashcode for this Constructor. The hashcode is the same as the hashcode for the underlying constructor's declaring class name. ($objectName$) @return

  Specified by:
    `hashCode` in class `EntryPoint`

### newInstance

    public java.lang.Object newInstance(java.lang.Object[] initargs)
                                 throws java.lang.InstantiationException,
                                        java.lang.IllegalAccessException,
                                        java.lang.IllegalArgumentException,
                                        java.lang.reflect.InvocationTargetException

  Uses the constructor represented by this Constructor object to create and initialize a new instance of the constructor's declaring class, with the specified initialization parameters. Individual parameters are automatically unwrapped to match primitive formal parameters, and both primitive and reference parameters are subject to widening conversions as necessary. Returns the newly created and initialized object.

  Creation proceeds with the following steps, in order:

  If the class that declares the underlying constructor represents an abstract class, the creation throws an InstantiationException.

  If this Constructor object enforces Java language access control and the underlying constructor is inaccessible, the creation throws an IllegalAccessException.

  If the number of actual parameters supplied via initargs is different from the number of formal parameters required by the underlying constructor, the creation throws an IllegalArgumentException.

  A new instance of the constructor's declaring class is created, and its fields are initialized to their default initial values.

  For each actual parameter in the supplied initargs array:

  If the corresponding formal parameter has a primitive type, an unwrapping conversion is attempted to convert the object value to a value of the primitive type. If this attempt fails, the creation throws an IllegalArgumentException.

  If, after possible unwrapping, the parameter value cannot be converted to the corresponding formal parameter type by an identity or widening conversion, the creation throws an IllegalArgumentException.

  Control transfers to the underlying constructor to initialize the new instance. If the constructor completes abruptly by throwing an exception, the exception is placed in an InvocationTargetException and thrown in turn to the caller of newInstance.

  If the constructor completes normally, returns the newly created and initialized instance.

  Parameters:
    `initargs` - initialization arguments.
  Returns:
    The new instance.
  Throws:
    `java.lang.IllegalAccessException` - if the underlying constructor is inaccessible.
    `java.lang.IllegalArgumentException` - if the number of actual and formal parameters differ, or if an unwrapping conversion fails.
    `java.lang.InstantiationException` - if the class that declares the underlying constructor represents an abstract class.
    `InvocationTargetException` - if the underlying constructor throws an exception.
    `java.lang.reflect.InvocationTargetException`

Copyright © 2004 Apache XML Project. All Rights Reserved.