# Class MBeanFeatureInfo

java.lang.Object
javax.management.MBeanFeatureInfo

All Implemented Interfaces:
  `Serializable, DescriptorRead`

Direct Known Subclasses:
  `MBeanAttributeInfo, MBeanConstructorInfo, MBeanNotificationInfo, MBeanOperationInfo, MBeanParameterInfo`

public class MBeanFeatureInfo extends Object implements Serializable, DescriptorRead

Provides general information for an MBean descriptor object. The feature described can be an attribute, an operation, a parameter, or a notification. 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
  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
  `MBeanFeatureInfo(String name, String description)`
  Constructs an `MBeanFeatureInfo` object.
  `MBeanFeatureInfo(String name, String description, Descriptor descriptor)`
  Constructs an `MBeanFeatureInfo` object.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `equals(Object o)`
  Compare this MBeanFeatureInfo to another.
  `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

  `clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### name

    protected String name
    The name of the feature. It is recommended that subclasses call `getName()` rather than reading this field, and that they not change it.

  - ### description

    protected String description
    The human-readable description of the feature. It is recommended that subclasses call `getDescription()` rather than reading this field, and that they not change it.

- ## Constructor Details

  - ### MBeanFeatureInfo

    public MBeanFeatureInfo(String name, String description)
    Constructs an `MBeanFeatureInfo` object. This constructor is equivalent to `MBeanFeatureInfo(name, description, (Descriptor) null`.
    Parameters:
      `name` - The name of the feature.
      `description` - A human readable description of the feature.

  - ### MBeanFeatureInfo

    public MBeanFeatureInfo(String name, String description, Descriptor descriptor)
    Constructs an `MBeanFeatureInfo` object.
    Parameters:
      `name` - The name of the feature.
      `description` - A human readable description of the feature.
      `descriptor` - The descriptor for the feature. This may be null which is equivalent to an empty descriptor.
    Since:
      1.6

- ## Method Details

  - ### getName

    public String getName()
    Returns the name of the feature.
    Returns:
      the name of the feature.

  - ### getDescription

    public String getDescription()
    Returns the human-readable description of the feature.
    Returns:
      the human-readable description of the feature.

  - ### getDescriptor

    public Descriptor getDescriptor()
    Returns the descriptor for the feature. Changing the returned value will have no affect on the original descriptor.
    Specified by:
      `getDescriptor` in interface `DescriptorRead`
    Returns:
      a descriptor that is either immutable or a copy of the original.
    Since:
      1.6

  - ### equals

    public boolean equals(Object o)
    Compare this MBeanFeatureInfo to another.
    Overrides:
      `equals` in class `Object`
    Parameters:
      `o` - the object to compare to.
    Returns:
      true if and only if `o` is an MBeanFeatureInfo such that its `getName()`, `getDescription()`, and `getDescriptor()` values are equal (not necessarily identical) to those of this MBeanFeatureInfo.
    See Also:
      - `Object.hashCode()`
      - `HashMap`