In simple terms, hook is nothing but event handler in Event Based Architecture. You can subscribe any public event through your handler(hooks) and it will be fired/callback when that event happens. e.g. WordPress built upon the event based architecture.
How its extensible? publish-subscribe principle decouple the event source from its subscribers/handlers/hooks and so two can vary without affecting each other.
Example : http://agafix.org/a-practical-guide-to-event-driven-programming-with-php/