Буквально недавно сталкнулся с ситуацией. Нужно было в процессе отладки проследить, кто меняет одно поле. Если бы оно ставилось через сеттер, я бы в него бряк поставил и по call-стеку увидел, что происходит. И добавил вы вывод в лог-файл, чтобы проследить, какие там значения бывают. Но это было public-поле, и это была жопа...