Spec-Zone.ru › OpenJDK 21

Класс Observable

java.lang.Object
java.util.Observable
@Deprecated(since="9") public class Observable extends Object
Устаревшее.
Этот класс и интерфейс Observer устарели. Модель событий, поддерживаемая Observer и Observable, довольно ограничена, порядок уведомлений, предоставляемых Observable не определён, и изменения состояния не соответствуют уведомлениям один к одному. Для более богатой модели событий, рассмотрите использование пакета java.beans. Для надёжной и упорядоченной передачи сообщений между потоками, рассмотрите использование одних из конкурирующих структур данных в пакете java.util.concurrent. Для программирования в стиле реактивных потоков, см. API Flow.
Этот класс представляет собой наблюдаемый объект или "данные" в модели-представлении. Он может быть подклассирован для представления объекта, который приложение хочет наблюдать.

Наблюдаемый объект может иметь одного или нескольких наблюдателей. Наблюдатель может быть любым объектом, который реализует интерфейс Observer. После изменения экземпляра наблюдаемого объекта, вызов метода Observable's notifyObservers вызывает уведомление всех его наблюдателей о изменении посредством вызова их метода update.

Порядок, в котором будут доставлены уведомления, не определён. По умолчанию реализация в классе Observable уведомит наблюдателей в порядке, в котором они зарегистрировали интерес, но подклассы могут изменить этот порядок, использовать не гарантированный порядок, доставлять уведомления в отдельных потоках, или гарантировать, что их подкласс следует этому порядку, по своему усмотрению.

Обратите внимание, что этот механизм уведомлений не связан с потоками и полностью отделен от механизма wait и notify класса Object.

Когда создаётся новый наблюдаемый объект, его набор наблюдателей пуст. Два наблюдателя считаются одинаковыми, если и только если метод equals возвращает true для них.

С:
1.0
См. также:
  • notifyObservers()
  • notifyObservers(java.lang.Object)
  • Observer
  • Observer.update(java.util.Observable, java.lang.Object)

Краткое описание конструкторов

Конструктор Описание
Observable()
Устаревшее.
Создаёт Observable без наблюдателей.

Краткое описание методов

Модификатор и тип Метод Описание
void addObserver(Observer o)
Устаревшее.
Добавляет наблюдателя в набор наблюдателей для этого объекта, при условии, что он не идентичен наблюдателю, уже присутствующему в наборе.
protected void clearChanged()
Устаревшее.
Указывает, что этот объект больше не изменился или уже уведомил всех своих наблюдателей о последнем изменении, так что метод hasChanged теперь вернёт false.
int countObservers()
Устаревшее.
Возвращает количество наблюдателей этого объекта Observable.
void deleteObserver(Observer o)
Устаревшее.
Удаляет наблюдателя из набора наблюдателей этого объекта.
void deleteObservers()
Устаревшее.
Очищает список наблюдателей, так что этот объект больше не имеет наблюдателей.
boolean hasChanged()
Устаревшее.
Проверяет, изменился ли этот объект.
void notifyObservers()
Устаревшее.
Если этот объект изменился, как указано методом hasChanged, тогда уведомляет всех своих наблюдателей и затем вызывает метод clearChanged, чтобы указать, что этот объект больше не изменился.
void notifyObservers(Object arg)
Устаревшее.
Если этот объект изменился, как указано методом hasChanged, тогда уведомляет всех своих наблюдателей и затем вызывает метод clearChanged, чтобы указать, что этот объект больше не изменился.
protected void setChanged()
Устаревшее.
Помечает этот объект Observable как изменённый; метод hasChanged теперь вернёт true.

Методы, объявленные в классе java.lang.Object

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

Подробное описание конструкторов

Observable

public Observable()
Устарело.
Создаёт Observable без наблюдателей.

Подробное описание методов

addObserver

public void addObserver(Observer o)
Устарело.
Добавляет наблюдателя к списку наблюдателей этого объекта, при условии, что он не совпадает с уже существующим наблюдателем. Порядок уведомления нескольких наблюдателей не определён. См. комментарий к классу.
Параметры:
o - наблюдатель, который нужно добавить.
Исключения:
NullPointerException - если параметр o равен null.

deleteObserver

public void deleteObserver(Observer o)
Устарело.
Удаляет наблюдателя из списка наблюдателей этого объекта. Передача null в этот метод не повлияет на результат.
Параметры:
o - наблюдатель, который нужно удалить.

notifyObservers

public void notifyObservers()
Устарело.
Если этот объект изменился, как указано методом hasChanged, тогда уведомите всех своих наблюдателей, а затем вызовите метод clearChanged, чтобы указать, что этот объект больше не изменился.

Каждый наблюдатель получает вызов метода update с двумя аргументами: этот наблюдаемый объект и null. Другими словами, этот метод эквивалентен:

notifyObservers(null)
См. также:
  • clearChanged()
  • hasChanged()
  • Observer.update(java.util.Observable, java.lang.Object)

notifyObservers

public void notifyObservers(Object arg)
Устарело.
Если этот объект изменился, как указано методом hasChanged, тогда уведомите всех своих наблюдателей, а затем вызовите метод clearChanged, чтобы указать, что этот объект больше не изменился.

Каждый наблюдатель получает вызов метода update с двумя аргументами: этот наблюдаемый объект и аргумент arg.

Параметры:
arg - любой объект.
См. также:
  • clearChanged()
  • hasChanged()
  • Observer.update(java.util.Observable, java.lang.Object)

deleteObservers

public void deleteObservers()
Устарело.
Очищает список наблюдателей, чтобы этот объект больше не имел наблюдателей.

setChanged

protected void setChanged()
Устарело.
Помечает этот объект Observable как изменённый; метод hasChanged теперь вернёт true.

clearChanged

protected void clearChanged()
Устарело.
Указывает, что этот объект больше не изменён, или что он уже уведомил всех своих наблюдателей о последнем изменении, так что метод hasChanged теперь вернёт false. Этот метод вызывается автоматически методами notifyObservers.
См. также:
  • notifyObservers()
  • notifyObservers(java.lang.Object)

hasChanged

public boolean hasChanged()
Устарело.
Проверяет, был ли изменён этот объект.
Возвращает:
true тогда и только тогда, когда метод setChanged был вызван позже, чем метод clearChanged для этого объекта; false в противном случае.
См. также:
  • clearChanged()
  • setChanged()

countObservers

public int countObservers()
Устарело.
Возвращает количество наблюдателей этого объекта Observable.
Возвращает:
количество наблюдателей этого объекта.

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Observable.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API