Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- interface Callable
- {
- public void callBackMethod();
- }
- class Worker
- {
- // Worker gets a handle to the boss object via the Callable interface.
- // There's no way this worker class can call any other method other than
- // the one in Callable.
- public void doSomeWork(Callable myBoss)
- {
- myBoss.callBackMethod();
- // ERROR!
- //myBoss.directMethod();
- }
- }
- class Boss implements Callable
- {
- public Boss()
- {
- // Boss creates a worker object, and tells it to do some work.
- Worker w1 = new Worker();
- // Notice, we're passing a reference of the boss to the worker.
- w1.doSomeWork(this);
- }
- public void callBackMethod()
- {
- System.out.println("What do you want?");
- }
- public void directMethod()
- {
- System.out.println("I'm out for coffee.");
- }
- }
- public class CallBack
- {
- // Main driver.
- public static void main(String[] args)
- {
- Boss b = new Boss();
- b.directMethod();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement