Есть ли в Java наблюдатели свойств, подобные методам willSet и didSet в Swift?
Я хочу наблюдать, было ли изменено значение переменной. Мне было интересно, если Java имеет что-то, что эквивалентно willSet
а также didSet
методы в Swift?
1 ответ
Не как язык. Java сама по себе не знает каких-либо свойств. Что вы можете сделать, хотя:
- Если объект принадлежит вам, просто поменяйте сеттер. Вот почему они в первую очередь.
- Если это не достаточно хорошо для вас, и вы хотите что-то лучше, по крайней мере, я надеюсь, что у вас есть Java 8. Там вы можете использовать свойства JavaFX: например,
LongProperty
, - Если вы не можете изменить код, вам придется перейти на АОП.