1: Synchronous Call: A blocking call that the caller waits for the other party to complete before returning, which is a one-way call
2: Callback: A bidirectional invocation pattern, that is, the callee will also invoke the interface when the interface is called;
3: Asynchronous invocation: A mechanism similar to a message or event, but it is called in the opposite direction, and the service of the interface proactively notifies the client (that is, the interface that invokes the client) when a message is received or an event occurs.
Example 2: The teacher usually after the assignment of the task can not wait and supervise the completion of the students, the teacher will often tell the students, the task to give him a call or send a message, then the students to the teacher to return the results of the process needs teacher information, this is a callback process.
Three ways to call Java (Synchronous call/callback/asynchronous invocation)