# Class BeanDescriptor

java.lang.Object
java.beans.FeatureDescriptor
java.beans.BeanDescriptor

public class BeanDescriptor extends FeatureDescriptor
A BeanDescriptor provides global information about a "bean", including its Java class, its displayName, etc.

This is one of the kinds of descriptor returned by a BeanInfo object, which also returns descriptors for properties, method, and events.

Since:
  1.1

## Constructor Summary

Constructors
Constructor
Description
`BeanDescriptor(Class<?> beanClass)`
Create a BeanDescriptor for a bean that doesn't have a customizer.
`BeanDescriptor(Class<?> beanClass, Class<?> customizerClass)`
Create a BeanDescriptor for a bean that has a customizer.

## Method Summary

Modifier and Type
Method
Description
`Class<?>`
`getBeanClass()`
Gets the bean's Class object.
`Class<?>`
`getCustomizerClass()`
Gets the Class object for the bean's customizer.

### Methods declared in class FeatureDescriptor

`attributeNames, getDisplayName, getName, getShortDescription, getValue, isExpert, isHidden, isPreferred, setDisplayName, setExpert, setHidden, setName, setPreferred, setShortDescription, setValue, toString`
Modifier and Type
Method
Description
`Enumeration<String>`
`attributeNames()`
Gets an enumeration of the locale-independent names of this feature.
`String`
`getDisplayName()`
Gets the localized display name of this feature.
`String`
`getName()`
Gets the programmatic name of this feature.
`String`
`getShortDescription()`
Gets the short description of this feature.
`Object`
`getValue(String attributeName)`
Retrieve a named attribute with this feature.
`boolean`
`isExpert()`
The "expert" flag is used to distinguish between those features that are intended for expert users from those that are intended for normal users.
`boolean`
`isHidden()`
The "hidden" flag is used to identify features that are intended only for tool use, and which should not be exposed to humans.
`boolean`
`isPreferred()`
The "preferred" flag is used to identify features that are particularly important for presenting to humans.
`void`
`setDisplayName(String displayName)`
Sets the localized display name of this feature.
`void`
`setExpert(boolean expert)`
The "expert" flag is used to distinguish between features that are intended for expert users from those that are intended for normal users.
`void`
`setHidden(boolean hidden)`
The "hidden" flag is used to identify features that are intended only for tool use, and which should not be exposed to humans.
`void`
`setName(String name)`
Sets the programmatic name of this feature.
`void`
`setPreferred(boolean preferred)`
The "preferred" flag is used to identify features that are particularly important for presenting to humans.
`void`
`setShortDescription(String text)`
You can associate a short descriptive string with a feature.
`void`
`setValue(String attributeName, Object value)`
Associate a named attribute with this feature.
`String`
`toString()`
Returns a string representation of the object.

### Methods declared in class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
Modifier and Type
Method
Description
`protected Object`
`clone()`
Creates and returns a copy of this object.
`boolean`
`equals(Object obj)`
Indicates whether some other object is "equal to" this one.
`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.
`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

### BeanDescriptor

public BeanDescriptor(Class<?> beanClass)
Create a BeanDescriptor for a bean that doesn't have a customizer.

Parameters:
  `beanClass` - The Class object of the Java class that implements the bean. For example sun.beans.OurButton.class.

### BeanDescriptor

public BeanDescriptor(Class<?> beanClass, Class<?> customizerClass)
Create a BeanDescriptor for a bean that has a customizer.

Parameters:
  `beanClass` - The Class object of the Java class that implements the bean. For example sun.beans.OurButton.class.
  `customizerClass` - The Class object of the Java class that implements the bean's Customizer. For example sun.beans.OurButtonCustomizer.class.

## Method Details

### getBeanClass

public Class<?> getBeanClass()
Gets the bean's Class object.

Returns:
  The Class object for the bean.

### getCustomizerClass

public Class<?> getCustomizerClass()
Gets the Class object for the bean's customizer.

Returns:
  The Class object for the bean's customizer. This may be null if the bean doesn't have a customizer.