Пусть у нас есть событие:
И слушатель:
Обычно, класс в который можно зарегистрировать слушатель выглядит как-то так:
Два метода fireEvent и fireChange мало того, что выглядят почти одинаково, так еще и имеют кучу таких же клонов в других классах. Повторяющийся код - это плохо. Хочется чего-то вроде этого:
Итог - минус полтора десятка строчек. Добиться этого можно с помощью java.lang.reflect.Proxy (предполагая, что Listener - это интерфейс).
Вот код решения:
И тест к нему:
пятница, 15 июля 2011 г.
Подписаться на:
Сообщения (Atom)