сделайте интерфейс Event, с методами addReaction(),fire(), далее делаете классы наследуемые от Person и реализующие интерфейс Event. Получается классы реализуюшие Event будут иметь эти методы а те кто нет — нет. если правильно понял. Также посмотрите паттерн Observer.