Tuesday, May 22, 2012


Dynamic method dispatch is the mechanism by which a call to an overridden method  is resolved at run time, rather than compile time. Dynamic method dispatch is important because this is how Java implements run-time polymorphism.

1/. Create A.java

public class A {
    void callme(){
        System.out.println("Inside's A call me");
    }
}

2/.Create B.java

public class B extends A{
    void callme(){
        System.out.println("Inside's B call me");
    }
}

3/. Create C.java
public class C extends B{
    void callme(){
        System.out.println("Inside's C call me");
    }
}

4/. Create Override.java

public class Override {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        A a=new A();
        B b=new B();
        C c=new C();
        A r; //otain a referent of type A
        
        r=a;//r refer object a
        r.callme();//call in class A
        
        r=b;//r refer object b
        r.callme();// call in class B
        
        r=c;//r refer object C
        r.callme();//call in class C
    }
}


No comments:

Post a Comment