Module java.management
Package javax.management.openmbean

# Class SimpleType<T>

java.lang.Object
javax.management.openmbean.OpenType<T>
javax.management.openmbean.SimpleType<T>

Type Parameters:
  `T` - the Java type that values described by this SimpleType must have.

All Implemented Interfaces:
  `Serializable`

public final class SimpleType<T> extends OpenType<T>
The `SimpleType` class is the open type class whose instances describe all open data values which are neither arrays, nor `CompositeData` values, nor `TabularData` values. It predefines all its possible instances as static fields, and has no public constructor.

Given a `SimpleType` instance describing values whose Java class name is className, the internal fields corresponding to the name and description of this `SimpleType` instance are also set to className. In other words, its methods `getClassName`, `getTypeName` and `getDescription` all return the same string value className.

Since:
  1.5
See Also:
  - Serialized Form

## Field Summary

Fields
Modifier and Type
Field
Description
`static final SimpleType<BigDecimal>`
`BIGDECIMAL`
The `SimpleType` instance describing values whose Java class name is `java.math.BigDecimal`.
`static final SimpleType<BigInteger>`
`BIGINTEGER`
The `SimpleType` instance describing values whose Java class name is `java.math.BigInteger`.
`static final SimpleType<Boolean>`
`BOOLEAN`
The `SimpleType` instance describing values whose Java class name is `java.lang.Boolean`.
`static final SimpleType<Byte>`
`BYTE`
The `SimpleType` instance describing values whose Java class name is `java.lang.Byte`.
`static final SimpleType<Character>`
`CHARACTER`
The `SimpleType` instance describing values whose Java class name is `java.lang.Character`.
`static final SimpleType<Date>`
`DATE`
The `SimpleType` instance describing values whose Java class name is `java.util.Date`.
`static final SimpleType<Double>`
`DOUBLE`
The `SimpleType` instance describing values whose Java class name is `java.lang.Double`.
`static final SimpleType<Float>`
`FLOAT`
The `SimpleType` instance describing values whose Java class name is `java.lang.Float`.
`static final SimpleType<Integer>`
`INTEGER`
The `SimpleType` instance describing values whose Java class name is `java.lang.Integer`.
`static final SimpleType<Long>`
`LONG`
The `SimpleType` instance describing values whose Java class name is `java.lang.Long`.
`static final SimpleType<ObjectName>`
`OBJECTNAME`
The `SimpleType` instance describing values whose Java class name is `javax.management.ObjectName`.
`static final SimpleType<Short>`
`SHORT`
The `SimpleType` instance describing values whose Java class name is `java.lang.Short`.
`static final SimpleType<String>`
`STRING`
The `SimpleType` instance describing values whose Java class name is `java.lang.String`.
`static final SimpleType<Void>`
`VOID`
The `SimpleType` instance describing values whose Java class name is `java.lang.Void`.

### Fields declared in class javax.management.openmbean.OpenType

`ALLOWED_CLASSNAMES, ALLOWED_CLASSNAMES_LIST`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object obj)`
Compares the specified `obj` parameter with this `SimpleType` instance for equality.
`int`
`hashCode()`
Returns the hash code value for this `SimpleType` instance.
`boolean`
`isValue(Object obj)`
Tests whether obj is a value for this `SimpleType` instance.
`Object`
`readResolve()`
Replace an object read from an `ObjectInputStream` with the unique instance for that value.
`String`
`toString()`
Returns a string representation of this `SimpleType` instance.

### Methods declared in class javax.management.openmbean.OpenType

`getClassName, getDescription, getTypeName, isArray`

### Methods declared in class java.lang.Object

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

## Field Details

### VOID

public static final SimpleType<Void> VOID
The `SimpleType` instance describing values whose Java class name is `java.lang.Void`.

### BOOLEAN

public static final SimpleType<Boolean> BOOLEAN
The `SimpleType` instance describing values whose Java class name is `java.lang.Boolean`.

### CHARACTER

public static final SimpleType<Character> CHARACTER
The `SimpleType` instance describing values whose Java class name is `java.lang.Character`.

### BYTE

public static final SimpleType<Byte> BYTE
The `SimpleType` instance describing values whose Java class name is `java.lang.Byte`.

### SHORT

public static final SimpleType<Short> SHORT
The `SimpleType` instance describing values whose Java class name is `java.lang.Short`.

### INTEGER

public static final SimpleType<Integer> INTEGER
The `SimpleType` instance describing values whose Java class name is `java.lang.Integer`.

### LONG

public static final SimpleType<Long> LONG
The `SimpleType` instance describing values whose Java class name is `java.lang.Long`.

### FLOAT

public static final SimpleType<Float> FLOAT
The `SimpleType` instance describing values whose Java class name is `java.lang.Float`.

### DOUBLE

public static final SimpleType<Double> DOUBLE
The `SimpleType` instance describing values whose Java class name is `java.lang.Double`.

### STRING

public static final SimpleType<String> STRING
The `SimpleType` instance describing values whose Java class name is `java.lang.String`.

### BIGDECIMAL

public static final SimpleType<BigDecimal> BIGDECIMAL
The `SimpleType` instance describing values whose Java class name is `java.math.BigDecimal`.

### BIGINTEGER

public static final SimpleType<BigInteger> BIGINTEGER
The `SimpleType` instance describing values whose Java class name is `java.math.BigInteger`.

### DATE

public static final SimpleType<Date> DATE
The `SimpleType` instance describing values whose Java class name is `java.util.Date`.

### OBJECTNAME

public static final SimpleType<ObjectName> OBJECTNAME
The `SimpleType` instance describing values whose Java class name is `javax.management.ObjectName`.

## Method Details

### isValue

public boolean isValue(Object obj)
Tests whether obj is a value for this `SimpleType` instance.

This method returns `true` if and only if obj is not null and obj's class name is the same as the className field defined for this `SimpleType` instance (ie the class name returned by the `getClassName` method).

Specified by:
  `isValue` in class `OpenType<T>`
Parameters:
  `obj` - the object to be tested.
Returns:
  `true` if obj is a value for this `SimpleType` instance.

### equals

public boolean equals(Object obj)
Compares the specified `obj` parameter with this `SimpleType` instance for equality.

Two `SimpleType` instances are equal if and only if their `getClassName` methods return the same value.

Specified by:
  `equals` in class `OpenType<T>`
Parameters:
  `obj` - the object to be compared for equality with this `SimpleType` instance; if obj is `null` or is not an instance of the class `SimpleType`, `equals` returns `false`.
Returns:
  `true` if the specified object is equal to this `SimpleType` instance.
See Also:
  - `Object.hashCode()`
  - `HashMap`

### hashCode

public int hashCode()
Returns the hash code value for this `SimpleType` instance. The hash code of a `SimpleType` instance is the hash code of the string value returned by the `getClassName` method.

As `SimpleType` instances are immutable, the hash code for this instance is calculated once, on the first call to `hashCode`, and then the same value is returned for subsequent calls.

Overrides:
  `hashCode` in class `Object`
Returns:
  the hash code value for this `SimpleType` instance
See Also:
  - `Object.equals(java.lang.Object)`
  - `System.identityHashCode(java.lang.Object)`

### toString

public String toString()
Returns a string representation of this `SimpleType` instance.

The string representation consists of the name of this class (ie `javax.management.openmbean.SimpleType`) and the type name for this instance (which is the java class name of the values this `SimpleType` instance represents).

As `SimpleType` instances are immutable, the string representation for this instance is calculated once, on the first call to `toString`, and then the same value is returned for subsequent calls.

Specified by:
  `toString` in class `OpenType<T>`
Returns:
  a string representation of this `SimpleType` instance

### readResolve

public Object readResolve() throws ObjectStreamException
Replace an object read from an `ObjectInputStream` with the unique instance for that value.

Returns:
  the replacement object.
Throws:
  `ObjectStreamException` - if the read object cannot be resolved.