У меня есть класс, который реализует интерфейс из библиотеки третьей части, и один из методов передает объект класса с именем Velocity
.
Как я могу прослушивать конкретные изменения значений переменных в этом объекте?
Вот код для лучшего понимания.
Это интерфейс из библиотеки третьей части:
public interface MotionListener {
void onObjectMoved(Velocity velocity);
void onObjectStopped();
}
, а класс Velocity
упакован в библиотеке иэто очень просто.Класс имеет 3 атрибута.Я реализовал этот интерфейс в своем классе следующим образом:
public class MyCar implements MotionListener {
@Override
public void onObjectMoved(Velocity velocity) {
System.out.println("Distance" + velocity.getDistance());
System.out.println("Speed" + velocity.getSpeed());
System.out.println("widnowIsOpened" + velocity.widnowIsOpened());
/*
I need here to set up a listener for the boolean value widnowIsOpened
because this boolean may be change later and this method will not be invoked again
, it is just invoked once but
value of windowIsOpened may change by the library
*/
}
@Override
public void onObjectStopped() {
}
// other methods ...
}
Мне нужно прислушиваться к изменениям логического значения, чтобы реагировать на изменения в моем коде.Я много занимался поиском по этой теме, но все возможные решения, которые я нашел, если у меня есть доступ к классу Velocity, чтобы я мог установить слушатель внутри класса Velocity
, но в моем случае у меня есть только переданный объект.Поэтому единственное, что я могу сделать, это проверить, является ли widnowIsOpened
истинным или ложным, но не для изменения.
Любая помощь?