Module javafx.base
Package javafx.beans.value

# Interface ChangeListener<T>

All Known Implementing Classes:
  `WeakChangeListener`

Functional Interface:
  This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface ChangeListener<T>
A `ChangeListener` is notified whenever the value of an `ObservableValue` changes. It can be registered and unregistered with `ObservableValue.addListener(ChangeListener)` respectively `ObservableValue.removeListener(ChangeListener)`

For an in-depth explanation of change events and how they differ from invalidation events, see the documentation of `ObservableValue`.

The same instance of `ChangeListener` can be registered to listen to multiple `ObservableValues`.

Since:
  JavaFX 2.0
See Also:
  - `ObservableValue`

## Method Summary

Modifier and Type
Method
Description
`void`
`changed(ObservableValue<? extends T> observable, T oldValue, T newValue)`
This method needs to be provided by an implementation of `ChangeListener`.

## Method Details

### changed

void changed(ObservableValue<? extends T> observable, T oldValue, T newValue)
This method needs to be provided by an implementation of `ChangeListener`. It is called if the value of an `ObservableValue` changes.

In general, it is considered bad practice to modify the observed value in this method.

Parameters:
  `observable` - The `ObservableValue` which value changed
  `oldValue` - The old value
  `newValue` - The new value