# Class SimpleStyleableObjectProperty<T>

java.lang.Object
javafx.beans.binding.ObjectExpression<T>
javafx.beans.property.ReadOnlyObjectProperty<T>
javafx.beans.property.ObjectProperty<T>
javafx.beans.property.ObjectPropertyBase<T>
javafx.css.StyleableObjectProperty<T>
javafx.css.SimpleStyleableObjectProperty<T>

Type Parameters:
  `T` - the property value type

All Implemented Interfaces:
  `Observable`, `Property<T>`, `ReadOnlyProperty<T>`, `ObservableObjectValue<T>`, `ObservableValue<T>`, `WritableObjectValue<T>`, `WritableValue<T>`, `StyleableProperty<T>`

public class SimpleStyleableObjectProperty<T> extends StyleableObjectProperty<T>
This class extends `SimpleObjectProperty` and provides a full implementation of a `StyleableProperty`. This class is used to make a `ObjectProperty`, that would otherwise be implemented as a `SimpleObjectProperty`, styleable by CSS.

Since:
  JavaFX 8.0
See Also:
  - `SimpleObjectProperty`
  - `CssMetaData`
  - `StyleableProperty`
  - `StyleableObjectProperty`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `SimpleStyleableObjectProperty(CssMetaData<? extends Styleable, T> cssMetaData)`
  The constructor of the `SimpleStyleableObjectProperty`.
  `SimpleStyleableObjectProperty(CssMetaData<? extends Styleable, T> cssMetaData, Object bean, String name)`
  The constructor of the `SimpleStyleableObjectProperty`.
  `SimpleStyleableObjectProperty(CssMetaData<? extends Styleable, T> cssMetaData, Object bean, String name, T initialValue)`
  The constructor of the `SimpleStyleableObjectProperty`.
  `SimpleStyleableObjectProperty(CssMetaData<? extends Styleable, T> cssMetaData, T initialValue)`
  The constructor of the `SimpleStyleableObjectProperty`.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `getBean()`
  Returns the `Object` that contains this property.
  `final CssMetaData<? extends Styleable, T>`
  `getCssMetaData()`
  Reflect back the CssMetaData that corresponds to this `javafx.beans.property.StyleableProperty`
  `String`
  `getName()`
  Returns the name of this property.

  ### Methods declared in class javafx.css.StyleableObjectProperty

  `applyStyle, getStyleOrigin`

  ### Methods declared in class javafx.beans.property.ObjectPropertyBase

  `addListener, addListener, bind, fireValueChangedEvent, get, invalidated, isBound, removeListener, removeListener, set, toString, unbind`

  ### Methods declared in class javafx.beans.property.ObjectProperty

  `bindBidirectional, setValue, unbindBidirectional`

  ### Methods declared in class javafx.beans.binding.ObjectExpression

  `asString, asString, asString, getValue, isEqualTo, isEqualTo, isNotEqualTo, isNotEqualTo, isNotNull, isNull, objectExpression`

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

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

  ### Methods declared in interface javafx.beans.Observable

  `subscribe`

  ### Methods declared in interface javafx.beans.value.ObservableValue

  `flatMap, getValue, map, orElse, subscribe, subscribe, when`

  ### Methods declared in interface javafx.beans.value.WritableValue

  `getValue, setValue`

- ## Constructor Details

  - ### SimpleStyleableObjectProperty

    public SimpleStyleableObjectProperty(CssMetaData<? extends Styleable, T> cssMetaData)
    The constructor of the `SimpleStyleableObjectProperty`.
    Parameters:
      `cssMetaData` - the CssMetaData associated with this `StyleableProperty`

  - ### SimpleStyleableObjectProperty

    public SimpleStyleableObjectProperty(CssMetaData<? extends Styleable, T> cssMetaData, T initialValue)
    The constructor of the `SimpleStyleableObjectProperty`.
    Parameters:
      `cssMetaData` - the CssMetaData associated with this `StyleableProperty`
      `initialValue` - the initial value of the wrapped `Object`

  - ### SimpleStyleableObjectProperty

    public SimpleStyleableObjectProperty(CssMetaData<? extends Styleable, T> cssMetaData, Object bean, String name)
    The constructor of the `SimpleStyleableObjectProperty`.
    Parameters:
      `cssMetaData` - the CssMetaData associated with this `StyleableProperty`
      `bean` - the bean of this `ObjectProperty`
      `name` - the name of this `ObjectProperty`

  - ### SimpleStyleableObjectProperty

    public SimpleStyleableObjectProperty(CssMetaData<? extends Styleable, T> cssMetaData, Object bean, String name, T initialValue)
    The constructor of the `SimpleStyleableObjectProperty`.
    Parameters:
      `cssMetaData` - the CssMetaData associated with this `StyleableProperty`
      `bean` - the bean of this `ObjectProperty`
      `name` - the name of this `ObjectProperty`
      `initialValue` - the initial value of the wrapped `Object`

- ## Method Details

  - ### getBean

    public Object getBean()
    Returns the `Object` that contains this property. If this property is not contained in an `Object`, `null` is returned.
    Returns:
      the containing `Object` or `null`

  - ### getName

    public String getName()
    Returns the name of this property. If the property does not have a name, this method returns an empty `String`.
    Returns:
      the name or an empty `String`

  - ### getCssMetaData

    public final CssMetaData<? extends Styleable, T> getCssMetaData()
    Reflect back the CssMetaData that corresponds to this `javafx.beans.property.StyleableProperty`
    Returns:
      the corresponding CssMetaData