Your alarm clock is a real world callback methods you set. When preset time arrives, it calls you back and wakes you up.
I originally learned callback from c/c++. You pass a (callback) function pointer to the method. When something happens, the function is called.
The same concept is used by
Java EventListener, Swing Timer. SAX is another use of it.
In GoF design
pattern terminology, it is called Observer/Observable design pattern, or Publisher/Subscriber design pattern.
Happy learning!