# Class MBeanConstructorInfo

java.lang.Object
javax.management.MBeanFeatureInfo
javax.management.MBeanConstructorInfo

All Implemented Interfaces:
  `Serializable, Cloneable, DescriptorRead`

Direct Known Subclasses:
  `ModelMBeanConstructorInfo, OpenMBeanConstructorInfoSupport`

public class MBeanConstructorInfo extends MBeanFeatureInfo implements Cloneable
Describes a constructor exposed by an MBean. Instances of this class are immutable. Subclasses may be mutable but this is not recommended.

Since:
  1.5
See Also:
  - Serialized Form

## Field Summary

### Fields declared in class MBeanFeatureInfo

`description, name`
Modifier and Type
Field
Description
`protected String`
`description`
The human-readable description of the feature.
`protected String`
`name`
The name of the feature.

## Constructor Summary

Constructors
Constructor
Description
`MBeanConstructorInfo(String description, Constructor<?> constructor)`
Constructs an `MBeanConstructorInfo` object.
`MBeanConstructorInfo(String name, String description, MBeanParameterInfo[] signature)`
Constructs an `MBeanConstructorInfo` object.
`MBeanConstructorInfo(String name, String description, MBeanParameterInfo[] signature, Descriptor descriptor)`
Constructs an `MBeanConstructorInfo` object.

## Method Summary

Modifier and Type
Method
Description
`Object`
`clone()`
Returns a shallow clone of this instance.
`boolean`
`equals(Object o)`
Compare this MBeanConstructorInfo to another.
`MBeanParameterInfo[]`
`getSignature()`
Returns the list of parameters for this constructor.

### Methods declared in class MBeanFeatureInfo

`getDescription, getDescriptor, getName`
Modifier and Type
Method
Description
`String`
`getDescription()`
Returns the human-readable description of the feature.
`Descriptor`
`getDescriptor()`
Returns the descriptor for the feature.
`String`
`getName()`
Returns the name of the feature.

### Methods declared in class Object

`finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`
Modifier and Type
Method
Description
`protected void`
`finalize()`
Deprecated, for removal: This API element is subject to removal in a future version.
Finalization is deprecated and subject to removal in a future release.
`final Class<?>`
`getClass()`
Returns the runtime class of this `Object`.
`int`
`hashCode()`
Returns a hash code value for this object.
`final void`
`notify()`
Wakes up a single thread that is waiting on this object's monitor.
`final void`
`notifyAll()`
Wakes up all threads that are waiting on this object's monitor.
`String`
`toString()`
Returns a string representation of the object.
`final void`
`wait()`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
`final void`
`wait(long timeoutMillis)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
`final void`
`wait(long timeoutMillis, int nanos)`
Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.

## Constructor Details

### MBeanConstructorInfo

public MBeanConstructorInfo(String description, Constructor<?> constructor)
Constructs an `MBeanConstructorInfo` object. The `Descriptor` of the constructed object will include fields contributed by any annotations on the `Constructor` object that contain the `DescriptorKey` meta-annotation.

Parameters:
  `description` - A human readable description of the operation.
  `constructor` - The `java.lang.reflect.Constructor` object describing the MBean constructor.

### MBeanConstructorInfo

public MBeanConstructorInfo(String name, String description, MBeanParameterInfo[] signature)
Constructs an `MBeanConstructorInfo` object.

Parameters:
  `name` - The name of the constructor.
  `description` - A human readable description of the constructor.
  `signature` - `MBeanParameterInfo` objects describing the parameters(arguments) of the constructor. This may be null with the same effect as a zero-length array.

### MBeanConstructorInfo

public MBeanConstructorInfo(String name, String description, MBeanParameterInfo[] signature, Descriptor descriptor)
Constructs an `MBeanConstructorInfo` object.

Parameters:
  `name` - The name of the constructor.
  `description` - A human readable description of the constructor.
  `signature` - `MBeanParameterInfo` objects describing the parameters(arguments) of the constructor. This may be null with the same effect as a zero-length array.
  `descriptor` - The descriptor for the constructor. This may be null which is equivalent to an empty descriptor.
Since:
  1.6

## Method Details

### clone

public Object clone()

Returns a shallow clone of this instance. The clone is obtained by simply calling `super.clone()`, thus calling the default native shallow cloning mechanism implemented by `Object.clone()`. No deeper cloning of any internal field is made.

Since this class is immutable, cloning is chiefly of interest to subclasses.

Overrides:
  `clone` in class `Object`
Returns:
  a clone of this instance.
See Also:
  - `Cloneable`

### getSignature

public MBeanParameterInfo[] getSignature()

Returns the list of parameters for this constructor. Each parameter is described by an `MBeanParameterInfo` object.

The returned array is a shallow copy of the internal array, which means that it is a copy of the internal array of references to the `MBeanParameterInfo` objects but that each referenced `MBeanParameterInfo` object is not copied.

Returns:
  An array of `MBeanParameterInfo` objects.

### equals

public boolean equals(Object o)
Compare this MBeanConstructorInfo to another.

Overrides:
  `equals` in class `MBeanFeatureInfo`
Parameters:
  `o` - the object to compare to.
Returns:
  true if and only if `o` is an MBeanConstructorInfo such that its `MBeanFeatureInfo.getName()`, `MBeanFeatureInfo.getDescription()`, `getSignature()`, and `MBeanFeatureInfo.getDescriptor()` values are equal (not necessarily identical) to those of this MBeanConstructorInfo. Two signature arrays are equal if their elements are pairwise equal.
See Also:
  - `Object.hashCode()`
  - `HashMap`