Maybe not private but more polymorphic. Why does the event class need to know about comment or voting notifications. Surely that'd be best left to CommentEvent and VoteEvent?